013 クラスライブラリ(日付を扱うクラス) 011 解答例

import java.time.LocalDateTime;

public class CurrentDateTimeExample {
    public static void main(String[] args) {
        // 現在の日付と時刻を取得
        LocalDateTime currentDateTime = LocalDateTime.now();

        // 取得した日付と時刻を表示
        System.out.println("現在の日付と時刻: " + currentDateTime);
    }
}

このプログラムでは、LocalDateTime.now() メソッドを使用して現在の日付と時刻を取得し、それを標準出力に表示しています。簡潔でわかりやすいコードとなっています。

LocalDateTimeクラス

java.time.LocalDateTime クラスは、日付と時刻の情報を両方持つクラスで、Java 8から導入された java.time パッケージに属しています。以下に、LocalDateTime クラスの主な特徴と使い方について解説します。

特徴:

  1. 日付と時刻:
    • LocalDateTime クラスは、日付と時刻の両方を同時に表現できます。これにより、日時の操作が容易になります。
  2. イミュータブル:
    • LocalDateTime インスタンスはイミュータブルです。つまり、一度作成されたインスタンスの値は変更できません。変更が必要な場合は、新しいインスタンスを作成する必要があります。
  3. フォーマット:
    • 日付と時刻を文字列にフォーマットするためには、DateTimeFormatter クラスを使用できます。また、toString() メソッドを呼び出すことで、デフォルトのフォーマットで文字列に変換することも可能です。

使い方の例:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class LocalDateTimeExample {
    public static void main(String[] args) {
        // 現在の日付と時刻を取得
        LocalDateTime currentDateTime = LocalDateTime.now();
        System.out.println("現在の日付と時刻: " + currentDateTime);

        // 特定の日付と時刻を作成
        LocalDateTime specificDateTime = LocalDateTime.of(2023, 1, 1, 12, 0);
        System.out.println("特定の日付と時刻: " + specificDateTime);

        // 文字列から日付と時刻をパース
        String dateStr = "2023-01-01T12:00:00";
        LocalDateTime parsedDateTime = LocalDateTime.parse(dateStr);
        System.out.println("パースした日付と時刻: " + parsedDateTime);

        // カスタムフォーマットで表示
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
        String formattedDateTime = currentDateTime.format(formatter);
        System.out.println("カスタムフォーマット: " + formattedDateTime);
    }
}

この例では、LocalDateTime クラスを使用して現在の日付と時刻を取得し、特定の日付と時刻を作成し、文字列から日付と時刻をパースする方法を示しています。また、カスタムフォーマットを使用して日付と時刻を表示する方法も示しています。

「013 クラスライブラリ」問題集リスト