java获取时间戳精确到微秒讲解 java获取时间戳精确到毫秒( 二 )

  1. 通过 with 方法进行快捷时间调节
  • 使用 TemporalAdjusters.firstDayOfMonth 得到当前月的第一天;
  • 使用 TemporalAdjusters.firstDayOfYear() 得到当前年的第一天;
  • 使用 TemporalAdjusters.previous(DayOfWeek.SATURDAY) 得到上一个周六;
  • 使用 TemporalAdjusters.lastInMonth(DayOfWeek.FRIDAY) 得到本月最后一个周五 。
System.out.println("//本月的第一天");System.out.println(LocalDate.now().with(TemporalAdjusters.firstDayOfMonth()));System.out.println("//今年的程序员日");System.out.println(LocalDate.now().with(TemporalAdjusters.firstDayOfYear()).plusDays(255));System.out.println("//今天之前的一个周六");System.out.println(LocalDate.now().with(TemporalAdjusters.previous(DayOfWeek.SATURDAY)));System.out.println("//本月最后一个工作日");System.out.println(LocalDate.now().with(TemporalAdjusters.lastInMonth(DayOfWeek.FRIDAY)));
  1. 可以直接使用 lanbda 表达式进行自定义的时间调整
System.out.println(LocalDate.now().with(temporal -> temporal.plus(ThreadLocalRandom.current().nextInt(100), ChronoUnit.DAYS)));除了计算外,还可以判断日期是否符合某个条件 。比如,自定义函数,判断指定日期是否是家庭成员的生日:
public class DateTimeTest {private static LocalDateTime localDateTime = LocalDateTime.now();public static void main(String[] args) {System.out.println(isFamilyBirthday(localDateTime));}public static Boolean isFamilyBirthday(LocalDateTime date) {int month = date.getMonthValue();int day = date.getDayOfMonth();if (month == Month.JULY.getValue() && day == 10)return Boolean.TRUE;if (month == Month.SEPTEMBER.getValue() && day == 21)return Boolean.TRUE;if (month == Month.MAY.getValue() && day == 22)return Boolean.TRUE;return Boolean.FALSE;}}


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: