java 中的 Java . time . temporal adjuster 类
原文:https://www . geesforgeks . org/Java-time-temporal-temporal adjuster-class-in-Java/
Java 中的 TemporalAdjusters 类提供了调整器,这是修改时态对象的关键工具。示例包括设置日期的调整器,如“每月的第二个星期六”或“下星期二”,或者将日期设置为每月的最后一天。
临时调节器有两种使用方式。第一种是通过直接调用接口上的方法。第二种是通过使用时态调整器:
以下两种使用 TemporalAdjuster 的方法是等效的,但建议使用第二种方法,因为它更清晰易读
temporal = thisAdjuster.adjustInto(temporal);
temporal = temporal.with(thisAdjuster);
方法
| **方法** | **描述** | | --- | --- | | dayOfWeekInMonth(int ordinal, DayOfWeek dayOfWeek) | 此方法用于返回月调整器中的星期几,该调整器返回同一个月内具有第几天的新日期对象。 | | 第一天每月() | 此方法用于返回“每月第一天”调整器,该调整器返回设置为当月第一天的新日期。 | | firstDayOfNextMonth() | 此方法用于返回“下月第一天”调整器,该调整器返回设置为下月第一天的新日期。 | | firstDayOfNextYear() | 此方法用于返回“明年第一天”调整器,该调整器返回设置为明年第一天的新日期。 | | 第一个工作日() | 此方法用于返回“年初一”调整器,该调整器返回设置为当年年初一的新日期。 | | firstInMonth(DayOfWeek DayOfWeek) | 此方法用于返回月内第一个调整器,该调整器返回与第一个匹配的星期几在同一个月中的新日期。 | | 最后一天 | 此方法用于返回“每月的最后一天”调整器,该调整器返回设置为当月最后一天的新日期。 | | lastDayOfYear() | 此方法用于返回“一年中的最后一天”调整器,该调整器返回一个设置为当年最后一天的新日期。 | | 上一月(星期一星期一) | 此方法用于返回月中最后一个调整器,该调整器返回与最后一个匹配的星期几在同一个月中的新日期。 | | 下一个(星期一星期一星期) | 此方法用于返回下一个星期几调整器,该调整器将日期调整到被调整日期之后指定星期几的第一次出现。 | | 下一个或 Same(星期一星期一星期) | 此方法用于返回下一个或同一天的星期调整器,该调整器将日期调整到正在调整的日期之后指定星期的第一次出现,除非它已经在返回相同对象的那一天。 | | 数据调节器(非数据调节器日期基准数据调节器) | 此方法用于获取包装日期调整器的临时调整器。 | | 上一个(星期一星期一) | 此方法用于返回前一个星期几调整器,该调整器将日期调整到被调整日期之前指定星期几的第一次出现。 | | 上一页或 Same(星期几星期一) | 此方法用于返回前一个或同一天的星期调整器,该调整器将日期调整到被调整日期之前的指定星期的第一次出现,除非它已经在返回相同对象的那一天。 |Java 语言(一种计算机语言,尤用于创建网站)
// Implementation of TemporalAdjuster Class Output will
// be different at the time of execution for different
// days. All the dates in the output will be with respect
// to the current date of executing the program
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
public class TemporalAdjusterExample {
public static void main(String args[])
{
TemporalAdjusterExample gfg
= new TemporalAdjusterExample();
gfg.testAdjusters();
}
public void testAdjusters()
{
// to get the current date
LocalDate date1 = LocalDate.now();
System.out.println("Today's date is: " + date1);
// to get the next monday
LocalDate nextTuesday = date1.with(
TemporalAdjusters.next(DayOfWeek.MONDAY));
System.out.println("Next Monday is on : "
+ nextTuesday);
// to get the second saturday of next month
LocalDate firstInYear = LocalDate.of(
date1.getYear(), date1.getMonth(), 1);
LocalDate secondSaturday
= firstInYear
.with(TemporalAdjusters.nextOrSame(
DayOfWeek.SATURDAY))
.with(TemporalAdjusters.next(
DayOfWeek.SATURDAY));
// print date of second Saturday of next month
System.out.println("Second saturday is on : "
+ secondSaturday);
}
}
输出:
Today's date is: 2021-02-24
Next Monday is on : 2021-03-01
Second saturday is on : 2021-02-13
版权属于:月萌API www.moonapi.com,转载请注明出处