我正在尝试从Java中的Calendar中清除HOUR_OF_DAY
。对于每个其他字段,该值将被清除。仅适用于HOUR_OF_DAY
,不是。
Calendar c = Calendar.getInstance();
c.clear(Calendar.MINUTE);
c.clear(Calendar.HOUR_OF_DAY);
System.out.println(c.getTime());
打印Wed May 04 12:00:31 IST 2016
在2 PM
打印Wed May 04 14:00:31 IST 2016
答案 0 :(得分:5)
来自API of clear
:
HOUR_OF_DAY
,HOUR
和AM_PM
字段是独立处理的,并且应用了时间的解析规则。清除其中一个字段不会重置此日历的小时值。使用set(Calendar.HOUR_OF_DAY, 0)
重置小时值。
所以,
c.set(Calendar.HOUR_OF_DAY, 0);
应该得到你想要的东西。