0

所以我认为这个问题很简单,我可以给你三行代码,问题很可能是我对日期类的理解。

    public DrawCalendar(GregorianCalendar date){

         date.setFirstDayOfWeek(GregorianCalendar.THURSDAY);
         System.out.print(date.get(GregorianCalendar.DAY_OF_WEEK));

我的问题是我相信我正在调整一周的开始日期,所以今天,默认情况下是一周的第 6 天。如果我将其更改为随机日期或整数,例如星期四,即使星期四是一周的第一天,我仍然会知道今天是一周的第六天。

这就是我相信正在发生的事情,为什么打印语句不会根据一周的第一天返回一个不同的数字,该数字在它之前的一行进行了调整?

4

3 回答 3

3
Use getFirstDayOfWeek() method
System.out.println(calObj.getFirstDayOfWeek()); 
于 2012-12-15T03:33:30.577 回答
2

setFirstDayOfWeek通常是 SUNDAY 或 MONDAY 并影响 WEEK_OF_YEAR 数字。DAY_OF_WEEK 只是星期一,星期二,...

于 2012-12-15T03:33:21.553 回答
1

我很确定这是因为:

date.setFirstDayOfWeek(GregorianCalendar.THURSDAY);

用于告诉类应该使用一周中的哪一天进行涉及周的日期计算,而

date.get(GregorianCalendar.DAY_OF_WEEK);

获取当前对象在时间上表示的星期几(因为当前对象表示特定时间点)。

于 2012-12-15T03:34:57.567 回答