也许是个愚蠢的问题,但我有一个在Java文档中找不到的问题。
Calendar.get(Calendar.DAY_OF_WEEK)的值是否根据Calendar.getFirstDayOfWeek()的值变化而变化?
或者Calendar.get(Calendar.DAY_OF_WEEK)总是给出正确的答案(基于当前的地区)?
发布于 2015-08-09 17:28:21
Calendar.get(Calendar.DAY_OF_WEEK)的值是否根据Calendar.getFirstDayOfWeek()的值变化而变化?
不是的。星期日是星期日(Calendar.SUNDAY),不管那是一周的第一天、第二天还是第七天。(如果你使用的不是公历,它的周日可能完全不同,那当然是另一回事了。)
发布于 2015-08-09 17:29:24
Calendar.getFirstDayOfWeek()不影响Calendar.get(Calendar.DAY_OF_WEEK)的值。它影响的可能是Calendar.WEEK_OF_YEAR,因为在计算当前的周数时会考虑周的第一天。
发布于 2015-08-09 17:38:16
DAY_OF_WEEK常量的文档实际上说:
get和set字段号,指示一周中的某一天。此字段采用星期日、星期一、星期二、星期三、星期四、星期五和星期六的值。
这意味着这个常量从get返回的值不会被解释为序数。这些都是Calendar类中的(静态)常量。他们评估为1,2,3的事实不应该让你感到困惑。它们的意思是“星期日、星期一、星期二”,而不是“第一天、第二天、第三天”。
https://stackoverflow.com/questions/31906835
复制相似问题