日付と時間

Javaには日付と時間(時刻)のデータを扱うための高度な機能があります.

ただ,初心者には理解し難いものもあるので,ここでは素朴な例を挙げます.

Javaのクラスライブラリに Date というクラスがあり,このクラスのインスタンスを new で生成すると,現在の日付と時刻に関するデータを保持するオブジェクトができます.

下の例 “DateTest1.java” では年,月,日,曜日,時,分,秒を手軽に取り出すメソッドを備えたクラス Date2(Dateクラスの拡張)を実装しています.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import java.util.*;
import java.text.*;
 
class Date2 extends Date {
	/*--------------------------------------*
	 * constructor				*
	 *--------------------------------------*/
	Date2(int year, int month, int day) {
	}
	Date2() {
	}
 
	/*--------------------------------------*
	 * methods				*
	 *--------------------------------------*/
	/* Date2 -> Year */
	public int Date2Year() {
		int y;
		SimpleDateFormat f;
		f = new SimpleDateFormat("yyyy");
		y = Integer.parseInt(f.format(this));
		return( y );
	}
	/* Date2 -> Month */
	public int Date2Month() {
		int m;
		SimpleDateFormat f;
		f = new SimpleDateFormat("MM");
		m = Integer.parseInt(f.format(this));
		return( m );
	}
	/* Date2 -> Day */
	public int Date2Day() {
		int d;
		SimpleDateFormat f;
		f = new SimpleDateFormat("dd");
		d = Integer.parseInt(f.format(this));
		return( d );
	}
	/* Date2 -> Week day */
	public String Date2WDay() {
		String wd;
		SimpleDateFormat f;
		f = new SimpleDateFormat("E");
		wd = f.format(this);
		return( wd );
	}
	/* Date2 -> Hour */
	public int Date2Hour() {
		int h;
		SimpleDateFormat f;
		f = new SimpleDateFormat("hh");
		h = Integer.parseInt(f.format(this));
		return( h );
	}
	/* Date2 -> Minute */
	public int Date2Min() {
		int m;
		SimpleDateFormat f;
		f = new SimpleDateFormat("mm");
		m = Integer.parseInt(f.format(this));
		return( m );
	}
	/* Date2 -> Second */
	public int Date2Sec() {
		int s;
		SimpleDateFormat f;
		f = new SimpleDateFormat("ss");
		s = Integer.parseInt(f.format(this));
		return( s );
	}
}
 
class DateTest1 {
	public static void main( String argv[] ) {
		int y,m,day,h,min,sec;
		String wd;
 
		Date2 d = new Date2();	// 現在の日付,時刻の取得
		y = d.Date2Year();	// 年の取得
		m = d.Date2Month();	// 月の取得
		day = d.Date2Day();	// 日の取得
		wd = d.Date2WDay();	// 曜日の取得
		h = d.Date2Hour();	// 時の取得
		min = d.Date2Min();	// 分の取得
		sec = d.Date2Sec();	// 秒の取得
		System.out.printf("%d/%d/%d (%s), %s:%s:%s\n",
					y,m,day,wd,h,min,sec);
	}
}

このプログラムを実行すると,その時の日付と時刻を表示します.

コメントを残す

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)