簡単な質問ですが、見つかりませんでした。
HOUR_OF_DAYの範囲は0から23、または1から24ですか?
ランダムなHOUR_OF_DAYが必要ですが、必要ですか?
int randomHour = (int) (Math.random()*24);
または
int randomHour = (int) (Math.random()*24+1);
ドキュメント から:
時刻を示すgetおよびsetのフィールド番号。
HOUR_OF_DAY
は24時間制で使用されます。例:10:04:15.250 PM theHOUR_OF_DAY
は22です。
10:04:15.250の場合PMはHOUR_OF_DAY
22、それは範囲になります0
-23
。だったら1
〜24
、 午後10時。そして、それは非常に多くのレベルで間違っているでしょう。 :-)
0-23です。
以下のコードを実行してテストしました
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 24);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
出力は0です。
走れば
calendar.set(Calendar.HOUR_OF_DAY, 23);
出力は23になります。
走れば
calendar.set(Calendar.HOUR_OF_DAY, 25);
出力は1になります。
範囲は0〜23です
これを実行
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
時刻が午前12時の場合、出力は0になります。
時間が11 PM=の場合、出力は23になります。