【转载】java8 自定义TemporalAdjuster

有的时候,你需要进行一些更加复杂的操作,比如,将日期调整到下个周日、下个工作日,或者是本月的最后一天。这时,你可以使用重载版本的with方法,向其传递一个提供了更多定制化选择的TemporalAdjuster对象,更 加 灵 活 地 处 理 日 期 

看下接口定义,就一个方法

@FunctionalInterface
public interface TemporalAdjuster {

        Temporal adjustInto(Temporal temporal);
}

这里一些常用的操作在TemporalAdjusters类已经预定义了


TemporalAdjusters的一些预定义方法
 dayOfWeekInMonth 创建一个新的日期,它的值为同一个月中每一周的第几天
 firstDayOfMonth 创建一个新的日期,它的值为当月的第一天
 firstDayOfNextMonth 创建一个新的日期,它的值为下月的第一天
 firstDayOfNextYear 创建一个新的日期,它的值为明年的第一天
 firstDayOfYear 创建一个新的日期,它的值为当年的第一天
 firstInMonth 创建一个新的日期,它的值为同一个月中,第一个符合星期几要求的值
 lastDayOfMonth 创建一个新的日期,它的值为当月的最后一天
 lastDayOfNextMonth 创建一个新的日期,它的值为下月的最后一天
 lastDayOfNextYear 创建一个新的日期,它的值为明年的最后一天
 lastDayOfYear 创建一个新的日期,它的值为今年的最后一天
 lastInMonth 创建一个新的日期,它的值为同一个月中,最后一个符合星期几要求的值
 next/previous
 创建一个新的日期,并将其值设定为日期调整后或者调整前,第一个符合指定星 期几要求的日期
 nextOrSame/previousOrSame创建一个新的日期,并将其值设定为日期调整后或者调整前,第一个符合指定星
 期几要求的日期,如果该日期已经符合要求,直接返回该对象
————————————————
版权声明:本文为CSDN博主「尚云峰111」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u011165335/article/details/76576345

原文地址:https://www.cnblogs.com/steveshao/p/11719987.html