Java @ mock

Date

最終更新:

Bot(ページ名リンク)

4,112 view
管理者のみ編集可

Date

Javaにおいて java.util.Dateクラスは日付・時刻を扱うクラスです。
精度はミリ秒です。
Dateクラスのコンストラクタ Date() は現在の日時を保持したDateオブジェクトを生成します。
Dateクラスのコンストラクタ Date(long date) は指定されたミリ秒の値を使って Date オブジェクトを構築します。

また、Dateクラスのメソッドは以下のようなものがあります。※他にもあります
  • setTime(long time) は1970/01/01 00:00:00 GMT からtimeミリ秒の時点を表すように設定します。
  • toString() はDateオブジェクトを文字列型に変換します。
  • after(Date when) はこの日付が、指定された日付より後にあるかどうかを判定します。
  • before(Date when) はこの日付が、指定された日付より前にあるかどうかを判定します。


Date 使用例 1

DateSample.java
class DateSample {
	
	public static void main([[String]][] args) {
		
		// 現在日時
		java.util.Date dateObject1 = new java.util.Date();
		System.out.println("dateObject1:" + dateObject1);
		
		// 1970/01/01 00:00:00.000
		java.util.Date dateObject2 = new java.util.Date(0);
		System.out.println("dateObject2:" + dateObject2);
		
		// 1970/01/01 00:00:00.000 から10000000000000ミリ秒経過時間
		java.util.Date dateObject3 = new java.util.Date(10000000000000L);
		System.out.println("dateObject3:" + dateObject3);
		
		// setTime(long time) は指定されたミリ秒の値を使って、既存の Date オブジェクトを設定します。
		java.util.Date dateObject4 = new java.util.Date();
		dateObject4.setTime(20000000000000L);
		System.out.println("dateObject4:" + dateObject4);
		
		// toString() Dateオブジェクトを文字列型に変換します。
		System.out.println(dateObject3.toString() + "\t" + dateObject4.toString());
		
		// after(Date when),before(Date when)で日付の比較を行います。
		System.out.println("dateObject1.after(dateObject2):" + dateObject1.after(dateObject2));
		System.out.println("dateObject2.after(dateObject1):" + dateObject2.after(dateObject1));
		System.out.println("dateObject1.before(dateObject2):" + dateObject1.before(dateObject2));
		System.out.println("dateObject2.before(dateObject1):" + dateObject2.before(dateObject1));

	}
}

実行結果
C:\java>javac DateSample.java

C:\java>java DateSample
dateObject1:Tue Mar 03 22:59:48 JST 2009
dateObject2:Thu Jan 01 09:00:00 JST 1970
dateObject3:Sun Nov 21 02:46:40 JST 2286
dateObject4:Tue Oct 11 20:33:20 JST 2603
Sun Nov 21 02:46:40 JST 2286    Tue Oct 11 20:33:20 JST 2603
dateObject1.after(dateObject2):true
dateObject2.after(dateObject1):false
dateObject1.before(dateObject2):false
dateObject2.before(dateObject1):true

また、「Thu Jan 01 09:00:00 JST 1970」のような表記ではなく他のフォーマットにしたい場合には、
java.text.DateFormatやjava.text.SimpleDateFormatなどDate型のフォーマットを行えるクラスがあります。


ウィキ募集バナー