System.out.println("today: " + today);
输出结果:
today: 2020-06-10
不用任何格式化,输出结果就非常友好,如果使用Date
,输出这样的格式,还得配合SimpleDateFormat
指定yyyy-MM-dd
进行格式化,一不小心还会出个bug,比如去年年底很火的1个bug,我当时还是截了图的:
这2个好友是2019/12/31关注我的,但我2020年1月2号查看时,却显示成了2020/12/31,为啥呢?格式化日期时格式写错了,应该是yyyy/MM/dd
,却写成了YYYY/MM/dd
,刚好那周跨年,就显示成下一年,也就是2020年了,当时好几个博主写过文章解析原因,我这里就不做过多解释了。
划重点:都说到这了,给大家安利下我新注册的公众号「申城异乡人」,欢迎大家关注,更多原创文章等着你哦,哈哈。
2.2 获取年月日
LocalDate today = LocalDate.now();
int year = today.getYear();
int month = today.getMonthValue();
int day = today.getDayOfMonth();
System.out.println("year: " + year);
System.out.println("month: " + month);
System.out.println("day: " + day);
输出结果:
year: 2020
month: 6
day: 10
获取月份终于返回1到12了,不像java.util.Calendar
获取月份返回的是0到11,获取完还得加1。
2.3 指定日期
LocalDate specifiedDate = LocalDate.of(2020, 6, 1);
System.out.println("specifiedDate: " + specifiedDate);
输出结果:
specifiedDate: 2020-06-01
如果确定月份,推荐使用另一个重载方法,使用枚举指定月份:
LocalDate specifiedDate = LocalDate.of(2020, Month.JUNE, 1);
2.4 比较日期是否相等
LocalDate localDate1 = LocalDate.now();
LocalDate localDate2 = LocalDate.of(2020, 6, 10);
if (localDate1.equals(localDate2)) {
System.out.println(“localDate1 equals localDate2”);
}
输出结果:
localDate1 equals localDate2
2.5 获取日期是本周/本月/本年的第几天
LocalDate today = LocalDate.now();
System.out.println(“Today:” + today);
System.o