我想获得24小时周期中的一天中的小时。我知道date.getHours()已贬值。但是我很想使用它,因为我无法从calendar.hour呼叫中得到相同的结果。
似乎调用calendar.setTime(now)不能获取当前日期值。有人知道这是怎么回事吗?
非常感激。
Date d = new Date();
Calendar c = Calendar.getInstance();
c.setTime(d);
System.out.println("hour: "+Math.abs(c.HOUR-24)+", mins: "+Math.abs(c.MINUTE-60)+", d.h: "+d.getHours() +", d.m: "+d.getMinutes());
最佳答案
您正在访问Calendar的HOUR
和MINUTE
静态属性。它们被用作一种公共静态枚举,因此,当您调用Calendar.get()
或Calendar.set()
时,可以引用特定的字段。要获取日历中包含的实际小时数,应使用:
c.get(Calendar.HOUR);
关于java - date.getHours()到calendar.hour,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13148819/