Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中一年中第一周的最短天数_Java_Calendar_Java.util.calendar - Fatal编程技术网

Java中一年中第一周的最短天数

Java中一年中第一周的最短天数,java,calendar,java.util.calendar,Java,Calendar,Java.util.calendar,我实际上正在浏览实用类日历。 我发现自己很困惑 方法 getFirstDayOfWeek() returns the first day of the week; e.g., SUNDAY in the U.S., MONDAY in France. 及 我住在印度(UTC+05:30)钦奈、加尔各答、孟买、新德里。 在此时区中不遵守夏令时 为了得到一年中的一周,我这样编码 Calendar calendar = Calendar.getInstance(); System.out.prin

我实际上正在浏览实用类日历。 我发现自己很困惑

方法

getFirstDayOfWeek() 
returns the first day of the week;
e.g., SUNDAY in the U.S., MONDAY in France.

我住在印度(UTC+05:30)钦奈、加尔各答、孟买、新德里。 在此时区中不遵守夏令时

为了得到一年中的一周,我这样编码

Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.WEEK_OF_YEAR));   // returns 45 
只有当Java处理

WeekNumber   FromDate                       ToDate
Week 01      December 30, 2013              January 5, 2014  // December 30 is Monday
Week 45      November 3, 2014(Monday)       November 9, 2014

Java是否需要最少的几天才能成为一个完整的7周?因为我可以通过setminimadaysinfirstweek()更改它。它会产生什么影响?

它与一周中的天数有关。除非你对周年感兴趣,否则它可能与你无关。默认情况下,我希望它是4,因为这是正常的ISO-8601值

我不确定这是否与“一周的第一天”部分相互作用——你需要检查一下,但听起来像是这样。这不应该和你的时区有任何关系


但举例来说,2014年的一周从2013年12月30日开始,因为2014年只有5天。如果你看看其他年份,你会发现一月份X年的前几天在X-1年的第52周或第53周。

事实上是第4周。文档很好地说明了这一点。例如,1998年1月1日是星期四。如果getFirstDayOfWeek()是星期一,getMinimalDaysInFirstWeek()是4(ISO 8601标准兼容设置),则1998年第1周从1997年12月29日开始,到1998年1月4日结束。1997日历年最后三天的年份为1998年。但是,如果getFirstDayOfWeek()是星期天,那么1998年的第1周从1998年1月4日开始,到1998年1月10日结束;1998年的前三天是1997年第53周的一部分,其周年为1997年。
WeekNumber   FromDate                       ToDate
Week 01      December 30, 2013              January 5, 2014  // December 30 is Monday
Week 45      November 3, 2014(Monday)       November 9, 2014