libro
www.tuyano.com
初心者のためのJava SEプログラミング入門

日時の値とカレンダー (2/6)

作成:2012-07-22 19:36
更新:2012-07-22 19:51

■特定のフィールドの値を操作する

では、取り出したCalendarを使い、日時を操作することを考えてみましょう。Calendarには、インスタンスから特定の値を取り出したり、設定したりするための機能が一通り用意されています。まずは、日時の値を取り出すメソッドからです。

●指定の値を取り出す
int 変数 =《Calendar》.
      get( フィールド );
get」は、引数に指定したフィールドの値を取り出して返します。「フィールド」というのは、日時の値のどの項目かを表すもの(「年」「月」「日」といった各項目)です。これは、Calendarクラスに用意されているクラスフィールドを使って指定します。

Calendar.YEAR――年を指定する
Calendar.MONTH――月を指定する
Calendar.DATE――日を指定する
Calendar.DAY_OF_WEEK――週の何日目か(つまり曜日)を指定する
Calendar.HOUR――時を指定する(12時間制)
Calendar.HOUR_OF_DAY――時を指定する(24時間制)
Calendar.MINUTE――分を指定する
Calendar.SECOND――秒を指定する
Calendar.MILLISECOND――ミリ秒を指定する

例えば、calendarというインスタンスから今日の「日」の値を取り出すなら、こんな具合にすればいいわけですね。
int d = calendar.get(Calendar.DATE);

●特定のフィールドの値を設定する
《Calendar》.set( フィールド, 値 );
決まったフィールドの値を設定するには「set」を使います。第1引数にフィールドを示す値(さっきのgetで使ったのと同じです)、第2引数に設定する値(int値)を指定します。このsetは、Calendarインスタンス自身を書き換えるので注意して下さい。

●日時の値を設定する
《Calendar》.set( 年, 月, 日 );
《Calendar》.set( 年, 月, 日, 時, 分 );
《Calendar》.set( 年, 月, 日, 時, 分, 秒 );
作成したCalendarの年月日を再設定する場合も「set」を使います。これにより年月日の値を変更できます。インスタンス作成後、日時を設定して使うのに便利ですね。

一つ注意して欲しいのは、「月の値はゼロから始まる」という点でしょう。月は、1~12ではなく、0~11で値を設定します。「7月」にしたければ「6」に設定しないといけません。年や日はそのまま数字のとおりに設定されます。

これらがわかれば、作成したCalendarの値を必要に応じて取り出したり、別の日時に再設定したりすることができるようになりますね。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「初心者のためのJava SEプログラミング入門」に戻る