カテゴリ: Java 更新日: 2026/02/12

JavaのLocalDateTime.getメソッドを完全ガイド!初心者でもわかる日時の取り出し方

LocalDateTimeのgetメソッド
LocalDateTimeのgetメソッド

先生と生徒の会話形式で理解しよう

生徒

「先生、Javaで日付や時間の特定の値を取り出したいときってどうすればいいんですか?」

先生

「そのときに使えるのがLocalDateTimeクラスのgetメソッドだよ。例えば年や月や日などを指定して取得できるんだ。」

生徒

「なるほど!でもどうやってどの値を取り出すか指定するんですか?」

先生

ChronoFieldを使えば簡単に指定できるんだよ。実際のコードを見ながら説明していこう。」

1. java.timeパッケージについて

1. java.timeパッケージについて
1. java.timeパッケージについて

java.timeパッケージはJava8から導入された新しい日付と時刻APIで、古いDateCalendarよりも直感的に使えるのが特徴です。金融システムや予約管理システムなど、正確な時間管理が必要なアプリケーションでは必須の技術になっています。初心者もまずはこのパッケージを理解することから始めると良いでしょう。

2. LocalDateTimeクラスの概要

2. LocalDateTimeクラスの概要
2. LocalDateTimeクラスの概要

LocalDateTimeは日付と時間を保持するクラスで、タイムゾーン情報は持ちません。「2025年9月23日 14時45分」といったローカルな日時を表現できます。アプリケーションで画面表示やデータベース保存に使う場面がとても多く、基本的なクラスとして覚えておく必要があります。

3. getメソッドの基本

3. getメソッドの基本
3. getメソッドの基本

getメソッドは、LocalDateTimeから特定のフィールドの値を取り出すために使います。指定にはChronoField列挙型を用います。例えばChronoField.YEARを指定すると年を取得でき、ChronoField.MONTH_OF_YEARを指定すると月を取得できます。


import java.time.LocalDateTime;
import java.time.temporal.ChronoField;

public class GetExample {
    public static void main(String[] args) {
        LocalDateTime now = LocalDateTime.now();
        int year = now.get(ChronoField.YEAR);
        int month = now.get(ChronoField.MONTH_OF_YEAR);
        int day = now.get(ChronoField.DAY_OF_MONTH);
        System.out.println("年: " + year);
        System.out.println("月: " + month);
        System.out.println("日: " + day);
    }
}

年: 2025
月: 9
日: 23

4. ChronoFieldの種類

4. ChronoFieldの種類
4. ChronoFieldの種類

ChronoFieldにはさまざまな定数があり、年・月・日・時・分・秒などを指定できます。代表的なものとしてはYEAR(年)、MONTH_OF_YEAR(月)、DAY_OF_MONTH(日)、HOUR_OF_DAY(時間)、MINUTE_OF_HOUR(分)、SECOND_OF_MINUTE(秒)などがあります。これらを覚えておくと柔軟に日時データを扱うことができます。

5. 時間の取得例

5. 時間の取得例
5. 時間の取得例

次に時間を取り出す例を見てみましょう。ChronoField.HOUR_OF_DAYで「時」を、ChronoField.MINUTE_OF_HOURで「分」を、ChronoField.SECOND_OF_MINUTEで「秒」を取得することが可能です。


import java.time.LocalDateTime;
import java.time.temporal.ChronoField;

public class TimeExample {
    public static void main(String[] args) {
        LocalDateTime now = LocalDateTime.now();
        int hour = now.get(ChronoField.HOUR_OF_DAY);
        int minute = now.get(ChronoField.MINUTE_OF_HOUR);
        int second = now.get(ChronoField.SECOND_OF_MINUTE);
        System.out.println("時: " + hour);
        System.out.println("分: " + minute);
        System.out.println("秒: " + second);
    }
}

時: 14
分: 45
秒: 30

6. getメソッド利用時の注意点

6. getメソッド利用時の注意点
6. getメソッド利用時の注意点

getメソッドで指定したフィールドがLocalDateTimeに存在しない場合、UnsupportedTemporalTypeExceptionが発生します。例えば週番号などを直接取得しようとするとエラーになるので注意が必要です。必要に応じてgetLongメソッドを使うとより広い範囲の値に対応できます。

7. getメソッドと他の取得方法の違い

7. getメソッドと他の取得方法の違い
7. getメソッドと他の取得方法の違い

getを使わなくてもgetYear()getMonthValue()のような専用メソッドを使うこともできます。専用メソッドは可読性が高く初心者におすすめですが、getは柔軟性が高く、フィールドを動的に扱いたい場合に便利です。

8. 実際の活用場面

8. 実際の活用場面
8. 実際の活用場面

業務アプリケーションでは、システムのログに日時を記録する際や、ユーザーに日付を表示するときに年・月・日を個別に取り出すことがあります。例えば予約システムでは「開始年」「開始月」「開始日」をそれぞれフォームに入力させるために、LocalDateTime.getを利用して分解するのが一般的です。

Javaの基礎を最初から体系的に学びたい人には、 初心者向けで定評のある定番入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

カテゴリの一覧へ
新着記事
New1
Thymeleaf
Thymeleafのth:actionの使い方を徹底解説!初心者向けフォーム処理の基本
更新記事
New2
Spring
Javaの@Validアノテーションを徹底解説!初心者でもわかる入力値検証の基本
更新記事
New3
Java
JavaのArrayListクラスとlistIteratorメソッドを完全解説!初心者でもわかる双方向反復処理
更新記事
New4
Spring
Springの@ResponseStatusとResponseStatusExceptionの使い方を徹底解説!初心者向けHTTPステータス制御ガイド
更新記事
人気記事
No.1
Java&Spring記事人気No1
Spring
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.2
Java&Spring記事人気No2
Servlet
JavaのHttpSessionを徹底解説!初心者でもわかるセッション管理の基本
No.3
Java&Spring記事人気No3
Spring
Springの@Componentアノテーションの使い方を徹底解説!初心者でもわかるSpring Boot入門
No.4
Java&Spring記事人気No4
Spring
Spring Data JPA入門!findAll()やfindBy**()の使い方などデータベース操作の基礎を学ぶ
No.5
Java&Spring記事人気No5
Spring
Springの@Serviceアノテーションの使い方を徹底解説!初心者でもわかるSpring フレームワーク入門
No.6
Java&Spring記事人気No6
Spring
SpringのModelクラスの使い方を完全ガイド!初心者でも安心
No.7
Java&Spring記事人気No7
JSP
JSPの基本タグ一覧と使い方まとめ!実務で使えるタグを紹介
No.8
Java&Spring記事人気No8
Java
Javaの@SuppressWarningsアノテーションの使い方を完全ガイド!初心者でもわかる警告の抑制方法

💻 作業効率アップに

長時間のコーディングでも疲れにくい♪ 静音ワイヤレスマウス

Logicool Signature M750 を見る

※ Amazon広告リンク