AMG Solution

【Java初心者向け】CalendarクラスのsetLenientメソッドで厳密チェック!

カレンダークラス
feels

こんにちは。関口です。
 
Javaで日付の処理を行う際に使用する、Calendarクラス。結構頻繁に使用しますよね。今回はそんなCalendarクラスの基本をおさらいしつつ、setLenientメソッドの紹介をしていきます。

目次

  1. Calendarクラスとは
  2. 日付の取得! Getメソッド
  3. 日付の設定! Setメソッド
  4. 日付の厳密チェック! setLenientメソッド
  5. まとめ

現在日時の取得・設定、日付の加算・減算など、日付の処理を行うさまざまな場面で使用できます。JavaではCalendarクラスの他に、DateクラスやLocalDateTimeクラスなどでも日付の処理を行うことができます。今回は触れませんが、ぜひ調べてみてください。

Getメソッドは日時を取得する際に使用します。基本となるオブジェクトの生成と、年・月・日の取得を試してみましょう!

実行結果

使用する際は「java.util.Calendar」をインポートします。Calendarクラスのオブジェクト生成は、現在日時を元に生成されます。実際の日付は「2021年6月1日」ですが、月の取得で「5」となっていますね。
 
Calendarクラスで月は0から始めるため、「0 = 1月」、「5 = 6月」となります。実際の月とは異なることを覚えておきましょう。

setメソッドは日時を設定する際に使用します。年・月・日ごとの設定から、年・月・日の一括設定を試してみましょう。

実行結果

設定した要素以外は、前の値が引き継がれるという事を覚えておきましょう。

基本をおさらいしたところで、いよいよsetLenientメソッドをご紹介します。setLenientメソッドは、設定することで日付の厳密化を行うことが出来ます。まず厳密化設定をした場合と、していない場合の違いを見てみましょう。

実行結果

setLenientメソッド設定しない場合は「true」が初期値として設定されています。厳密化設定を行うことで、設定値の不正をキャッチすることができます!
 
また、設定値エラーが発生している場所はSet時ではなく、Get時になります。覚えておきましょう。

いかがでしたでしょうか。
 
今回紹介したGetメソッド、Setメソッド、setLenientメソッドの他にも、さまざまなメソッドがあります。Calendarクラスをマスターする道のりは長い!
 
 
 
 
《関連記事》

feels recruit

SEKIGUCHI'S BLOG

関口の記事

関口の記事の最新情報をお届けいたします。

SAME CATEGORY BLOG

この記事と同様のカテゴリー記事

feelsでSFA・CRM
はじめました。
LOADING