広告

Java : TemporalAdjuster (日付・時刻の調整) - API使用例

TemporalAdjuster (Java SE 20 & JDK 20) の使用例まとめです。
だいたいのメソッドを網羅済みです。
API仕様書のおともにどうぞ。


概要

時間的オブジェクトを調整するための方針です。

クラス構成

TemporalAdjuster は、日付や時刻の値を、別の値へと調整するためのインタフェースです。

final var temporal = LocalDateTime.of(2100, 4, 10, 17, 30);
System.out.println(temporal); // 2100-04-10T17:30

final TemporalAdjuster adjuster = LocalDate.of(1999, 1, 2);
System.out.println(adjuster); // 1999-01-02

final var ret = adjuster.adjustInto(temporal);
System.out.println(ret); // 1999-01-02T17:30

また、TemporalAdjusters ユーティリティを使うと、例えば

  • 月の最初の日
  • 月の最後の日

に調整する TemporalAdjuster を取得することができます。

final var date = LocalDate.of(2100, Month.APRIL, 15);
System.out.println(date); // 2100-04-15

final var adjuster1 = TemporalAdjusters.firstDayOfMonth();
System.out.println(date.with(adjuster1)); // 2100-04-01

final var adjuster2 = TemporalAdjusters.lastDayOfMonth();
System.out.println(date.with(adjuster2)); // 2100-04-30

メソッド

Temporal adjustInto (Temporal temporal)

指定された時間的オブジェクトを調整します。

final var temporal = LocalDateTime.of(2100, 4, 10, 17, 30);
System.out.println(temporal); // 2100-04-10T17:30

final TemporalAdjuster adjuster = LocalDate.of(1999, 1, 2);
System.out.println(adjuster); // 1999-01-02

final var ret = adjuster.adjustInto(temporal);
System.out.println(ret); // 1999-01-02T17:30

関連記事

ページの先頭へ