Dateクラス

Javaでは日付を扱うクラスにDateクラスや、Calendarクラスが用意されています。
それらのDateクラスやCalenderクラスはJava.utilパッケージに属しているので使用するときは 必ずimport宣言が必要です。

まずは、Dateクラスから見ていきます。

Dateクラスのコンストラクタ

コンストラクタ
説明
Date()
OSが保持している現在の日付と時間を持ったオブジェクトが返されます
Date(long date)

ある特定の日付、時刻に初期化されたオブジェクトが返されます。このコンストラクタの引数には、基準時(1970年1月1日)午前0時からの経過時間をミリ(long型で表したもの をセットします。特定の日付などをセットしたい場合は、こちらを利用します。

Dateクラスのメソッド

戻り値
メソッド
説明
boolean
after(Date ehen) 引数で指定した日付が現在の日付よりも後なら真を返します
boolean
before(Date when) 引数で指定した日付が現在の日付よりも前なら真を返します
object
clone() オブジェクトがコピーされて返されます
int
compareTo(Date anotherDate) 順序付けのため2つのDateを比較します
long
getTime() 基準値(1970年 1月1日午前0時)からのミリ秒を返す
int
compareTo(Object o) 引数oと現在の日付が等しいか比較
boolean
equals(object) 引数oと現在の日付が同じなら真を返す
int
hashCode() 現在の日付に対しハッシュコード値を返す
void
setTime(long time) 引数timeを現在の日付にセットします
String
toString() 日付をString型に変更して返します

Dateクラスを利用するときの注意点

Dateクラスのメソッドにおいて、次の表示が使用されます。

  1. 年は整数y-1900において表示されます。
  2. 月は0〜11の整数で表示されます。0は1月 1は2月、そして11は12月を表します。
  3. 日(月の何日目)は通常どおり1〜31の整数となります。
  4. 時間は0〜23の整数で表します。このため、真夜中から午前1時までの時間は時刻0分であり 正午から午後1時までの時間は時刻12を表します。
  5. 分は通常どおり0〜59の整数で表します。
  6. 秒は0〜61の整数で表されます。値60及び61は、うるう秒のためだけに、そして実際にはうるう秒 を正確に追跡するJavaの実装だけで発生します。

※全ての場合において、この目的でメソッドに与えられた引数は指定された範囲に入る必要はありません。
つまり、日付を1月31として指定した場合は2月1日に解釈されます。
※Dateクラスにはメンバー変数はありません。

では、Dateクラスを利用したサンプルプログラムを見ていきます。

サンプルプログラム(Sample119.java)

//import宣言

import java.util.*; class Sample119{ public static void main(String args[]){ //Dateオブジェクトの生成 Date obj = new Date();
//OSが保持している現在の時間の出力
System.out.println("現在の時刻は " + obj + "です");
} }

プログラムをコピーする場合すべて選択をクリックしてください。

Sponsored link

コンパイル・実行してみます。

最も簡単なDateクラスのサンプルです。
まず、日付を扱うクラスはutilパッケージに属しているのでimport宣言が必要です。
次にDateクラスのオブジェクトを作成しています。
引数のないコンストラクタはOSが保持している現在の日付と時間を持ったオブジェクトが返されます。

OSが持った日付とはご自分のパソコンで設定されている日付のことです。

日付の確認の仕方は

コントロールパネル→日付、時刻、地域と言語のオプション→日付と時刻から確認できます。

ページのトップへ戻る