简单说明:
①Java1.8之后出现了localdate,localdatetime,localtime这些类,而这些类使用了final来修饰,使得这些类是不可变的,一旦实例化,值就固定了,有点类似于String类,所以这些类都是线程安全的。
②localdate是针对于年月日的,localtime是针对于时分秒,localdatetime是针对于年月日时分秒
这里的话主要讲解的是LocalDate类用来比较时间前后的一些方法使用
1.首先我想判断我某个时间是不是小于当前日期 (LocalDate的isBefore()方法)
示例:
//字符串的日期转为LocalDate格式的时间
LocalDate date1 = LocalDate.parse("2022-11-12");
LocalDate date2 = LocalDate.parse("2022-11-15");
//如果date1的日期在date2之前则为true
if(date1.isBefore(date2)){
System.out.println("date1在日期之前");
}else{
System.out.println("date1在日期之后");
}
输出结果:
date1在日期之前
2.LocalDate的isAfter()使用
示例:
//字符串的日期转为LocalDate格式的时间
LocalDate date1 = LocalDate.parse("2022-11-12");
LocalDate date2 = LocalDate.parse("2022-11-15");
if( date1.isAfter(date2) ){
System.out.println("date1在date2之后");
}else{
System.out.println("date2在date1之后");
}
输出结果:
date2在date1之后
3.LocalDate的日期格式化
示例:
//加入一个字符串的日期需要格式化成LocalDate来进行计算
String date ="2022-10-22";
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
//格式化日期(DateTimeFormatter是线程安全的,用于localData的时间格式化)
LocalDate date2 = LocalDate.parse(date, dtf);
使用DateTimeFormatter 以此来进行LocalDate的时间格式化;