JDK8日期处理工具类

  • Post author:
  • Post category:其他


//获取当前日期
LocalDate now = LocalDate.now();
//获取昨天日期
LocalDate yesterday = now.plusDays(-1);
//前天日期
LocalDate yesterdayBefore = now.plusDays(-2);
=============================================近一月
//获取当前日期
LocalDate n= LocalDate.now();
//获取上月第一天
LocalDate lastMonthFirstDay=n.minus(1, ChronoUnit.MONTHS).with(TemporalAdjusters.firstDayOfMonth());
//获取上月最后一天
LocalDate lastMonthEndDay=n.minus(1,ChronoUnit.MONTHS).with(TemporalAdjusters.lastDayOfMonth());
//获取上上个月的第一天
LocalDate last2Now = n.minusMonths(1);
LocalDate last2MonthFirstDay=last2Now.minus(1, ChronoUnit.MONTHS).with(TemporalAdjusters.firstDayOfMonth());
//获取上上个月的最后一天
LocalDate last2MonthEndDay=last2Now.minus(1,ChronoUnit.MONTHS).with(TemporalAdjusters.lastDayOfMonth());
============================================近一年
//当前日期
LocalDate n= LocalDate.now();
//去年当前日期
n =n.minusYears(1);
//获取去年第一天
LocalDate lastYearFirst = n.with(TemporalAdjusters.firstDayOfYear());
//获取去年最后一天
LocalDate lastYearEnd = n.with(TemporalAdjusters.lastDayOfYear());

LocalDate n1= LocalDate.now();
n1 =n1.minusYears(2);
//获取前年第一天
LocalDate last2YearFirst = n1.with(TemporalAdjusters.firstDayOfYear());
//获取前年最后一天
LocalDate last2YearEnd = n1.with(TemporalAdjusters.lastDayOfYear());


LocalDate常用API


LocalDate 是 Java 8 中处理日期的一个类,它提供了许多常用的方法,以下是其中一些常见的方法:

now():返回当前日期。

of(int year, int month, int dayOfMonth):根据年、月、日创建一个 LocalDate 对象。

getYear():返回年份。

getMonth():返回月份。

getDayOfMonth():返回月份中的天数。

getDayOfWeek():返回星期几。

plusDays(long daysToAdd):将当前日期加上指定的天数,并返回一个新的 LocalDate 对象。

plusMonths(long monthsToAdd):将当前日期加上指定的月份数,并返回一个新的 LocalDate 对象。

plusYears(long yearsToAdd):将当前日期加上指定的年数,并返回一个新的 LocalDate 对象。

minusDays(long daysToSubtract):将当前日期减去指定的天数,并返回一个新的 LocalDate 对象。

minusMonths(long monthsToSubtract):将当前日期减去指定的月份数,并返回一个新的 LocalDate 对象。

minusYears(long yearsToSubtract):将当前日期减去指定的年数,并返回一个新的 LocalDate 对象。


TemporalAdjusters常用API


TemporalAdjusters 是 Java 8 中处理日期时间调整的一个工具类,它提供了许多常用的方法,以下是其中一些常见的方法:

firstDayOfMonth():返回当月的第一天。

lastDayOfMonth():返回当月的最后一天。

firstDayOfNextMonth():返回下个月的第一天。

firstDayOfYear():返回当年的第一天。

lastDayOfYear():返回当年的最后一天。

firstDayOfNextYear():返回下一年的第一天。

dayOfWeekInMonth():返回当月的第几个星期几,例如第二个星期五。

next(DayOfWeek dayOfWeek):返回下一个指定星期几的日期。

previous(DayOfWeek dayOfWeek):返回上一个指定星期几的日期。

nextOrSame(DayOfWeek dayOfWeek):返回下一个指定星期几的日期,如果指定的日期已经是这个星期几,则返回这个日期。

previousOrSame(DayOfWeek dayOfWeek):返回上一个指定星期几的日期,如果指定的日期已经是这个星期几,则返回这个日期。

以上是 TemporalAdjusters 的一些常用方法,你可以根据自己的需求选择合适的方法来处理日期时间调整。



版权声明:本文为weixin_36332085原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。