📌  相关文章
📜  Java中的 DayOfWeek adjustInto() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:31:51.798000             🧑  作者: Mango

Java中的 DayOfWeek adjustInto() 方法及示例

在 Java 8 中,DayOfWeek 类提供了 adjustInto() 方法,该方法用于将当前星期几(DayOfWeek 对象)调整到指定日期中的星期几。该方法返回一个新的 LocalDate 对象,表示调整后的日期。

语法
public final Temporal adjustInto(Temporal temporal)

其中,temporal 表示要调整的日期时间对象,可以是 LocalDate、LocalDateTime、ZonedDateTime 等。

示例

以下是一个示例,演示如何使用 adjustInto() 方法将当前日期调整为指定的星期几(星期六)。

import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;

public class AdjustIntoExample {
    public static void main(String[] args) {
        LocalDate date = LocalDate.now();
        System.out.println("当前日期:" + date);

        LocalDate adjustedDate = date.with(TemporalAdjusters.next(DayOfWeek.SATURDAY));
        System.out.println("下一个星期六:" + adjustedDate);

        LocalDate adjustedDate2 = DayOfWeek.SATURDAY.adjustInto(date);
        System.out.println("调整后的日期:" + adjustedDate2);
    }
}

输出结果如下:

当前日期:2021-06-06
下一个星期六:2021-06-12
调整后的日期:2021-06-12

在示例中,我们首先获取了当前日期,然后使用 TemporalAdjusters.next() 方法获取下一个星期六的日期,并将其赋值给 adjustedDate。

接着,我们使用 DayOfWeek.SATURDAY.adjustInto() 方法将当前日期调整为星期六,并将结果赋值给 adjustedDate2。

最后,我们输出了 adjustedDate2,即调整后的日期。

注意事项
  • 如果要调整的日期与当前星期几相同,则 adjustInto() 方法不会对日期做出任何更改,仍将返回当前日期。
  • 如果在调整后的日期中存在时间信息(如 LocalDateTime 或 ZonedDateTime),则时间信息会被保留。