java8
intellij idea
设置本月中某一天@Test public void test() { LocalDateTime localDateTime = LocalDateTime.now(); System.out.println(localDateTime); LocalDateTime localDateTime1 = localDateTime.withDayOfMonth(2); System.out.println(localDateTime1); }
查看程序运行结果:原来是12月10日被设置成10月2日了
得到一周后的时间。@Test public void test() { LocalDateTime localDateTime = LocalDateTime.now(); System.out.println(localDateTime); LocalDateTime localDateTime1 = localDateTime.withDayOfMonth(2); System.out.println(localDateTime1); LocalDateTime localDateTime2 = localDateTime. with(TemporalAdjusters.next(DayOfWeek.SUNDAY)); }
查看程序运行结果:
自定义时间校正器自定义下一个工作日LocalDateTime localDateTime3 = localDateTime.with((x) -> { LocalDateTime ldt = (LocalDateTime)x; DayOfWeek dayOfWeek = ldt.getDayOfWeek(); if(dayOfWeek.equals(DayOfWeek.FRIDAY)) { return ldt.plusDays(3); }else if(dayOfWeek.equals(DayOfWeek.SATURDAY)){ return ldt.plusDays(2); }else { return ldt.plusDays(1); } });
查看程序运行结果: