import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc =
new Scanner(System.in)
;
String s1 = sc.nextLine();
String s2 = sc.nextLine();
String [] dateStr1 = s1.split("-");
String [] dateStr2 = s2.split("-");
int year1 = Integer.parseInt( dateStr1[0] );
int month1 = Integer.parseInt( dateStr1[1] );
int day1 =
Integer.parseInt( dateStr1[2] )
;
int year2 = Integer.parseInt( dateStr2[0] );
int month2 = Integer.parseInt( dateStr2[1] );
int day2 = Integer.parseInt( dateStr2[2] );
LocalDate date1 = LocalDate.of(year1, month1, day1);
LocalDate date2 =
LocalDate.of(year2, month2, day2)
;
if(
date1.isBefore(date2)
)
System.out.println("第一个日期比第二个日期更早");
else
System.out.println("第一个日期比第二个日期更晚");
long dayCount =
date1.until(date2, ChronoUnit.DAYS)
;
long weekCount = date1.until(date2, ChronoUnit.WEEKS);
System.out.println("两个日期间隔" + Math.abs(dayCount) + "天" );
System.out.println("两个日期间隔" + Math.abs(weekCount) + "周" );
sc.close();
}
}
分数 5
作者 吴光生
单位 新余学院
从键盘输入两个日期,格式如:2022-06-18。判断两个日期的先后,并输出它们之间间隔的天数、周数(不足一周按0计算)。
输入样例1:
2000-02-18
2000-03-15
输出样例1:
第一个日期比第二个日期更早
两个日期间隔26天
两个日期间隔3周
预备知识:通过查询Java API文档,了解Scanner类中nextLine()等方法、String类中split()等方法、Integer类中parseInt()等方法的用法,了解LocalDate类中of()、isAfter()、isBefore()、until()等方法的使用规则,了解ChronoUnit类中DAYS、WEEKS、MONTHS等单位的用法。