Java写代码:从键盘输入两个日期,格式如:2022-06-18。判断两个日期的先后,并输出它们之间间隔的天数、周数(不足一周按0计算)
时间: 2023-05-20 21:03:57 浏览: 144
以下是Java代码:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import java.util.Scanner;
public class DateInterval {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个日期(格式:yyyy-MM-dd):");
String date1Str = scanner.nextLine();
System.out.print("请输入第二个日期(格式:yyyy-MM-dd):");
String date2Str = scanner.nextLine();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date1 = LocalDate.parse(date1Str, formatter);
LocalDate date2 = LocalDate.parse(date2Str, formatter);
if (date1.isBefore(date2)) {
System.out.println("第一个日期早于第二个日期");
long days = ChronoUnit.DAYS.between(date1, date2);
long weeks = days / 7;
System.out.println("两个日期之间间隔的天数为:" + days);
System.out.println("两个日期之间间隔的周数为:" + weeks);
} else if (date1.isAfter(date2)) {
System.out.println("第一个日期晚于第二个日期");
long days = ChronoUnit.DAYS.between(date2, date1);
long weeks = days / 7;
System.out.println("两个日期之间间隔的天数为:" + days);
System.out.println("两个日期之间间隔的周数为:" + weeks);
} else {
System.out.println("两个日期相同");
}
}
}
```
输入示例:
```
请输入第一个日期(格式:yyyy-MM-dd):2022-06-18
请输入第二个日期(格式:yyyy-MM-dd):2022-06-25
```
输出示例:
```
第一个日期早于第二个日期
两个日期之间间隔的天数为:7
两个日期之间间隔的周数为:1
```
阅读全文