请问大家:
Calendar.MINUTE是静态常量,我用它的子类java.util.GregorianCalendar得到当前时间:
java.util.Calendar calendar = new java.util.GregorianCalendar();
hour = calendar.get(Calendar.HOUR);
minute = calendar.get(Calendar.MINUTE);
second = calendar.get(Calendar.SECOND);
Calendar.HOUR常量不是不能修改吗?每个当前时间应该是不一样的吧,而且这个变量属于类的,如果定义对象这个变量也不能改变吧。请问这是怎么回事啊?求大家赐教!!
------解决方案--------------------
============================================================
Calendar.HOUR常量不是不能修改吗?每个当前时间应该是不一样的吧,而且这个变量属于类的,如果定义对象这个变量也不能改变吧。
============================================================
Calendar.HOUR是一個final static變量,當然是不能修改的.
每個當前時間也是不一樣的;
------------------------------------------------
hour = calendar.get(Calendar.HOUR);
minute = calendar.get(Calendar.MINUTE);
second = calendar.get(Calendar.SECOND);
------------------------------------------------
hour,minute,second返回的當然都不相同,calendar.get(Calendar.HOUR)不等於Calendar.HOUR,看看Calendar 的int get(int field)的代碼
------解决方案--------------------
hour = calendar.get(Calendar.HOUR);中的Calendar.HOUR相当于一个字段名,或者说是Map中的一个key的名称,这个Calendar.HOUR的值是不能改的,如果改了calendar.get(Calendar.HOUR)取出的值则会不同。