您好,我是码农飞哥,感谢您阅读本文!本文主要介绍Java 1.8中LocalDateTime的一些基本使用。
获取当前日期
LocalDateTime localDateTime = LocalDateTime.now(); System.out.println(localDateTime); //2021-03-21T14:37:45.208
日期比较
日期比较有两种方式,第一种方式是通过compareTo方法进行比较。如果前一个日期小于后一个日期则返回-1,如果前一个日期等于后一个日期则返回0,
如果前一个日期大于后一个日期则返回1。
//日期比较 LocalDateTime date1 = LocalDateTime.parse("2021-03-21T10:15:30"); LocalDateTime date2 = LocalDateTime.parse("2021-03-20T10:15:30"); //前一个日期小于后一个日期,则为负值,前一个日期大于后一个日期则为正值 int result = date1.compareTo(date2); System.out.println("前一个日期大于都一个日期=" + result); date2 = LocalDateTime.parse("2021-03-21T10:15:30"); result = date1.compareTo(date2); System.out.println("前一个日期等于都一个日期=" + result); date1 = LocalDateTime.parse("2021-03-20T10:15:30"); result = date1.compareTo(date2); System.out.println("前一个日期小于都一个日期=" + result);
另外一种方式是通过isBefore方法和isAfter。对于isBefore方法,如果前一个日期小于后一个日期,则返回true,否则则返回false,即前一个日期大于或者等于后一个日期都会返回false。
LocalDate a = LocalDate.of(2021, 3, 12); LocalDate b = LocalDate.of(2021, 3, 13); if (a.isBefore(b)) { System.out.println("日期A小于日期B"); }
日期格式化
LocalDateTime localDateTime = LocalDateTime.now(); // 日期格式化(格式化到年月日) String format = localDateTime.format(DateTimeFormatter.ISO_LOCAL_DATE); System.out.println("年月日格式化={}" + format); String format1 = localDateTime.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME); System.out.println("年月日时分秒格式化={}" + format1); //年月日格式化={}2021-03-21 //年月日时分秒格式化={}2021-03-21T14:44:41.038