java Day_Of_Week的问题 小白莫喷

2025-04-24 08:55:03
推荐回答(1个)
回答1:

呀,这都被你发现了~~

---------------------------------------------

 
(字段7) public final
static int DAY_OF_WEEK = 7;
说明:星期几。
取值:可以为,SUNDAY、MONDAY、TUESDAY、WEDNESDAY、THURSDAY、FRIDAY
和 SATURDAY。
         其中,SUNDAY为1,MONDAY为2,依次类推。

 

 

运行你上面一段代码发现 , 上部分的得到的是 2 (和java api的注释一致)

而调用了time.set(2015,3,23);过后, 得到的结果却是 5

 

 

 

这是为什么呢? jdk 的bug?

 

非也非也

 

我们来看看 jdk 关于 set 的javadoc

 

 

可以看出, set 的month 参数,是从0开始的, 你上面传的3 其实是2015年4月23号

4月23号 是 星期四哦, 也就是输出5 没错的哦

 

 

正确的写法应该是

time.set(2015,2,23);

 

返回 2