1、Java中的Date、LocalDate、LocalDateTime互相转换
1.1、Date转LocalDate
Date date = new Date();
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
1.2、Date转LocalDateTime
Date date = new Date();
LocalDateTime now = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
1.3、LocalDate转Date
LocalDate localDate = LocalDate.now();
Date date = Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant()));
1.4、LocalDateTime转Date
LocalDateTime localDateTime = LocalDateTime.now();
Date startDate = Date.from(localDateTime.toInstant(ZoneOffset.of("+8")));
1.5、LocalDate 转 LocalDateTime
LocalDate localDate = LocalDate.now();
LocalDateTime localDateTime1 = localDate.atStartOfDay();
LocalDateTime localDateTime2 = localDate.atTime(LocalTime.now());
1.6、LocalDateTime 转 LocalDate
LocalDateTime localDateTime = LocalDateTime.now();
LocalDate localDate = localDateTime.toLocalDate();
2、Java中的Date、LocalDate、LocalDateTime比较大小
2.1、Date比较大小
String beginTime = new String("2014-08-15 10:22:22");
String endTime = new String("2014-09-02 11:22:22");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date bt = sdf.parse(beginTime);
Date et = sdf.parse(endTime);
if (bt.before(et)){
--表示bt小于et
} else {
--反之
}
if (bt.after(et)){
--表示bt大于et
} else {
--反之
}
2.2、LocalDate 比较大小
LocalDate localDate1 = LocalDate.now();
LocalDate localDate2 = LocalDate.now();
localDate1.isBefore(localDate2);
localDate1.isAfter(localDate2);
2.3、LocalDateTime 比较大小
LocalDateTime localDateTime1 = LocalDateTime.now();
LocalDateTime localDateTime2 = LocalDateTime.now();
localDateTime1.isBefore(localDateTime2);
localDateTime1.isAfter(localDateTime2);