不确定得到什么(Calendar.DAY_OF_WEEK)返回(Unsure what get(Ca

2019-09-17 21:13发布

我的问题可以通过下面的场景中轻松创建:

 //create a gregorian calendar object that set the date and time as 4th June 2012 at 10:30PM
 Calendar calendar = new GregorianCalendar(2012, 6, 4, 22, 30);

 //when I print out these:
 System.out.println(calendar.get(Calendar.DAY_OF_WEEK));
 System.out.println(calendar.get(Calendar.MINUTE));
 System.out.println(calendar.get(Calendar.HOUR));
 System.out.println(calendar.get(Calendar.DATE));
 System.out.println(calendar.get(Calendar.MONTH));
 System.out.println(calendar.get(Calendar.YEAR));

 //output reads as:
 4
 30
 10
 4
 6
 2012

 //so does calendar.get(Calendar.DAY_OF_WEEK) == calendar.get(Calendar.DATE) ???

只是让每个人都清楚6月4日2012是星期一,所以不宜calendar.get(Calendar.DAY_OF_WEEK)返回0作为一周的第一天的一部分?

感谢您所有的帮助和关注,也请确认您指的是源。

user1442080

Answer 1:

在java中Calendar类的月份是从0开始的。 所以六月是月5号。

实际上,你创造了代表7月4日,这恰好是一个星期三,这是一周的第四天的对象。



Answer 2:

每个人都应该寻求通过日历返回的值。{}场像如Calendar.SUNDAY,Calendar.MONDAY,Calendar.JANUARY,Calendar.MARCH等等等等。 这是因为,该值通过日历返回。{}领域取决于在创建日历实例指定的时区。 您可以通过创建不同的时区两个日历情况下,试试这个:

Calendar.getInstance("BST")

Calendar.getInstance() // default timezone

现在尝试让calendar.get(Calendar.DAY_OF_WEEK)这会为这两个实例返回不同的整数值。



文章来源: Unsure what get(Calendar.DAY_OF_WEEK) returns