java 8 date time 简单样例

mac2025-01-14  8

参考

Java 8 Time Api 使用指南-珍藏限量版Java 8 中处理日期和时间示例

部分样例

import java.time.temporal.TemporalAdjusters; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import static java.lang.System.out; /** * 描述:java 8 处理时间样例 */ public class LocalDateExample { private static String PATTERN_YYYYMMDD = "yyyyMMdd"; public static void main(String[] args){ // 这里模拟的是日期参数为 yyyyMMdd形式,如果是yyyy-MM-dd的格式则无需进行任何处理 // 获取指定日期上一年的最后一天 LocalDate localdate1 = LocalDate.parse("20190829", DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD)).minus(1, ChronoUnit.YEARS).with(TemporalAdjusters.lastDayOfYear()); out.println("20190829上一年的最后一天" + localdate1); out.println("20190829上一年的最后一天" + localdate1.format(DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD))); // 获取指定年的年初 LocalDate localdate2 = LocalDate.parse("20190829", DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD)).with(TemporalAdjusters.firstDayOfYear()); out.println("20190829的年初" + localdate2); out.println("20190829的年初" + localdate2.format(DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD))); // 获取指定日期前一年的年初 LocalDate localdate3 = LocalDate.parse("20190829", DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD)).minus(1, ChronoUnit.YEARS).with(TemporalAdjusters.firstDayOfYear()); out.println("20190829前一年的年初" + localdate3); out.println("20190829前一年的年初" + localdate3.format(DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD))); // 去年的今天 LocalDate localdate4 = LocalDate.parse("20190829", DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD)).minus(1, ChronoUnit.YEARS); out.println("20190829去年的今天" + localdate4); out.println("20190829去年的今天" + localdate4.format(DateTimeFormatter.ofPattern(PATTERN_YYYYMMDD))); } }
最新回复(0)