Javaプログラミングにおける日付と時刻

Javaプログラミングの日付と時刻

Javaの日付と時刻

目次

日付と時刻の表現

Javaでは日付と時刻をjava.time パッケージを使用して表現します。
クラスの例

  • LocalDate: 日付を表現するクラス
  • LocalTime: 時刻を表現するクラス
  • LocalDateTime: 日付と時刻を組み合わせて表現するクラス
  • ZonedDateTime: タイムゾーンを考慮した日付と時刻を表現するクラス
  • DateTimeFormatter: 日付と時刻を指定したフォーマットに変換するクラス

現在時刻の取得

LocalDate now = LocalDate.now();
LocalTime now = LocalTime.now();
LocalDateTime now = LocalDateTime.now();
ZonedDateTime now = ZonedDateTime.now();

特定の日付と時刻の取得

LocalDate date = LocalDate.of(2023, 8, 1);
LocalTime time = LocalTime.of(12, 34, 56);
LocalDateTime dateTime = LocalDateTime.of(2023, 8, 1, 12, 34, 56);
ZonedDateTime zonedDateTime = ZonedDateTime.of(2023, 8, 1, 12, 34, 56, 0, ZoneId.of("Asia/Tokyo"));

特定の日付と時刻の取得

LocalDate date = LocalDate.of(2023, 8, 1);
LocalTime time = LocalTime.of(12, 34, 56);
LocalDateTime dateTime = LocalDateTime.of(2023, 8, 1, 12, 34, 56);
ZonedDateTime zonedDateTime = ZonedDateTime.of(2023, 8, 1, 12, 34, 56, 0, ZoneId.of("Asia/Tokyo"));

日付の作成

日付を作成する方法は以下の通りです:

LocalDate date = LocalDate.now(); // 現在の日付
LocalDate specificDate = LocalDate.of(2023, 10, 10); // 2023年10月10日

時刻の作成

時刻を作成する方法は以下の通りです:

LocalTime time = LocalTime.now(); // 現在の時刻
LocalTime specificTime = LocalTime.of(14, 30, 0); // 14時30分0秒

日付と時刻の結合

日付と時刻を結合してLocalDateTimeを作成する方法は以下の通りです:

LocalDate date = LocalDate.of(2023, 10, 10);
LocalTime time = LocalTime.of(14, 30, 0);
LocalDateTime dateTime = LocalDateTime.of(date, time);

日付と時刻の操作

日付や時刻の操作にはメソッドを使用します。例えば、日付に日数を追加するには:

LocalDate date = LocalDate.now();
LocalDate newDate = date.plusDays(7); // 7日後の日付

日付と時刻のフォーマット

日付や時刻を特定のフォーマットに変換するには DateTimeFormatter を使用します。

LocalDate date = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = date.format(formatter); // "2023-10-10"

タイムゾーンを考慮した操作

タイムゾーンを考慮した操作には ZonedDateTime を使用します。

ZoneId zone = ZoneId.of("America/New_York");
ZonedDateTime zonedDateTime = ZonedDateTime.now(zone);

これにより、指定したタイムゾーンでの現在の日付と時刻を取得できます。

Javaの日付と時刻の操作は豊富で柔軟であり、さまざまな要件に対応できます。詳細な情報については公式ドキュメントや参考文献を参照することをお勧めします。

【1】Java 17 Documentation
【2】Java Date and Time API

Javaプログラミングにおける日付と時刻の取り扱いについて、コードや表を使ってできるだけ詳細に説明させていただきます。

日付と時刻

Javaプログラミングにおける日付と時刻は、java.time パッケージで提供されるクラスを使用して扱います。

日付と時刻のクラス

クラス説明
LocalDate日付を表すクラス
LocalTime時刻を表すクラス
LocalDateTime日付と時刻を表すクラス
ZonedDateTimeタイムゾーンを考慮した日付と時刻を表すクラス

日付と時刻の操作

日付と時刻には、さまざまな操作を行うことができます。

操作説明
日付と時刻の取得LocalDate getDate() メソッド、LocalTime getTime() メソッド、LocalDateTime getDateTime() メソッドを使用して、日付と時刻を取得できます。
日付と時刻の変更LocalDate setDate() メソッド、LocalTime setTime() メソッド、LocalDateTime setDateTime() メソッドを使用して、日付と時刻を変更できます。
日付と時刻の比較equals() メソッドを使用して、日付と時刻を比較できます。
日付と時刻の加算plus() メソッドを使用して、日付と時刻に時間を加算できます。
日付と時刻の減算minus() メソッドを使用して、日付と時刻から時間を減算できます。

日付と時刻の例

日付と時刻の例をいくつか示します。

Java

// 日付と時刻の取得
LocalDate date = LocalDate.now();
LocalTime time = LocalTime.now();
LocalDateTime dateTime = LocalDateTime.now();

// 日付と時刻の表示
System.out.println(date); // 2023-07-20
System.out.println(time); // 12:00:00
System.out.println(dateTime); // 2023-07-20T12:00:00

// 日付と時刻の変更
date = date.plusDays(1);
time = time.plusHours(1);
dateTime = dateTime.plusMinutes(1);

// 日付と時刻の比較
boolean isEqual = date.equals(dateTime); // false

// 日付と時刻の加算
LocalDateTime tomorrow = dateTime.plusDays(1);

// 日付と時刻の減算
LocalDateTime yesterday = dateTime.minusDays(1);

まとめ

Javaプログラミングにおける日付と時刻の取り扱いについて、コードや表を使って説明しました。

日付と時刻は、Javaプログラミングでよく使用されるデータです。日付と時刻のクラスを理解することで、日付と時刻を効率的に扱うことができるようになります。

補足

Java 11 以降では、java.time パッケージに加えて、java.time.chrono パッケージも使用できます。java.time.chrono パッケージには、さまざまな文化や伝統に基づく日付と時刻を表すクラスが用意されています。

教科書

Pythonの教科書は「やさしいPython」です。

Javaの教科書は「スッキリわかるJava入門 実践編 第3版」です。

著:中山清喬, 著:国本大悟, 監修:株式会社フレアリンク
¥941 (2024/04/19 09:53時点 | Amazon調べ)

SQLの教科書は「スッキリわかるSQL入門第3版」です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次