HOUR_OF_DAY的范围是多少?

时间:2014-04-19 10:22:44

标签: java android calendar

一个简单的问题,但我无法找到它:

HOUR_OF_DAY的范围是0到23之间,还是1到24?

我想要一个随机的HOUR_OF_DAY,我需要:

        int randomHour = (int) (Math.random()*24);

        int randomHour = (int) (Math.random()*24+1);

3 个答案:

答案 0 :(得分:35)

来自the documentation

  

获取和设置的字段编号,表示当天的小时。 HOUR_OF_DAY用于24小时制。例如,在下午10:04:15.250 HOUR_OF_DAY是22。

如果10:04:15.250 PM HOUR_OF_DAY 22,则会产生范围0 - 23。如果是124,那么晚上10点。会是23.这在很多层面都是错误的。 : - )

答案 1 :(得分:9)

是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。

答案 2 :(得分:4)

范围介于0到23之间

运行此

Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY);
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));

如果时间是上午12点,输出将为0

如果时间是晚上11点,则输出为23