public final class WeekFields extends Object implements Serializable
一个标准的一周是七天,但文化有不同的定义,一些其他方面的一个星期。这类表示本周的定义,为TemporalField
实例的目的。
weekfields提供五场,dayOfWeek()
,weekOfMonth()
,weekOfYear()
,weekOfWeekBasedYear()
,和weekBasedYear()
提供任何temporal object值。
对于一周计算,周,月,年和周是基于proleptic-year,month-of-year,day-of-month,和ISO day-of-week是基于epoch-day和年代学。值可能无法与year-of-Era根据年表排列。
一个星期的定义:
Date | Day-of-week | First day: Monday Minimal days: 4 |
First day: Monday Minimal days: 5 |
---|---|---|---|
2008-12-31 | Wednesday | Week 5 of December 2008 | Week 5 of December 2008 |
2009-01-01 | Thursday | Week 1 of January 2009 | Week 0 of January 2009 |
2009-01-04 | Sunday | Week 1 of January 2009 | Week 0 of January 2009 |
2009-01-05 | Monday | Week 2 of January 2009 | Week 1 of January 2009 |
week-of-week-based-year
一
week-based-year
。在一周的一年,每个星期只属于一个单一的一年。一年的1是一周的第一天,在一周的第一天,至少有最少的天数。一年的第一个和最后一个星期可能包含前一个日历年或下一个日历年的天数。
Date | Day-of-week | First day: Monday Minimal days: 4 |
First day: Monday Minimal days: 5 |
---|---|---|---|
2008-12-31 | Wednesday | Week 1 of 2009 | Week 53 of 2008 |
2009-01-01 | Thursday | Week 1 of 2009 | Week 53 of 2008 |
2009-01-04 | Sunday | Week 1 of 2009 | Week 53 of 2008 |
2009-01-05 | Monday | Week 2 of 2009 | Week 1 of 2009 |
Modifier and Type | Field and Description |
---|---|
static WeekFields |
ISO
一个星期的ISO-8601的定义,从星期一开始,第一周至少有4天。
|
static WeekFields |
SUNDAY_START
一般定义一个星期,从星期日开始,第一个星期至少有1天。
|
static TemporalUnit |
WEEK_BASED_YEARS
代表一周为基础的几年为目的的加法和减法的单位。
|
Modifier and Type | Method and Description |
---|---|
TemporalField |
dayOfWeek()
返回一个字段存取基于这
WeekFields 星期。
|
boolean |
equals(Object object)
如果这个检查
WeekFields 等于指定的对象。
|
DayOfWeek |
getFirstDayOfWeek()
获取每周的第一天。
|
int |
getMinimalDaysInFirstWeek()
在第一周获得最少的天数。
|
int |
hashCode()
这
WeekFields 哈希代码。
|
static WeekFields |
of(DayOfWeek firstDayOfWeek, int minimalDaysInFirstWeek)
获得
WeekFields 实例从第一天的星期和最小的天。
|
static WeekFields |
of(Locale locale)
获得一
WeekFields 适当现场实例。
|
String |
toString()
这
WeekFields 实例的字符串表示形式。
|
TemporalField |
weekBasedYear()
返回一个字段存取基于这一周
WeekFields 基础年。
|
TemporalField |
weekOfMonth()
返回一个字段存取基于此
WeekFields 月周。
|
TemporalField |
weekOfWeekBasedYear()
返回一个字段存取基于这一周的周
WeekFields 基础年。
|
TemporalField |
weekOfYear()
返回一个字段存取基于此
WeekFields 今年周。
|
public static final WeekFields ISO
的ISO-8601标准定义了一个基于周日历系统。它使用一周为基础的一年,周为基础的一年的概念,分裂的日子,而不是标准的一年/月/天。
请注意,第一周可能会在上一个日历年开始。请注意,日历年的前几天可能是在对应于上一年的一周的基础上的一年中。
public static final WeekFields SUNDAY_START
定义为从星期日开始,并在一个月内至少1天。本周的定义是在美国和其他欧洲国家使用的。
public static final TemporalUnit WEEK_BASED_YEARS
这允许一个基于周的几年被添加到,或减去,日期。单位等于52或53周。一周时间的估计一年为一个标准ISO年365.2425 Days
相同。
此外,增加了一周为基础的年数,以现有的价值为周为基础的年度字段保留周为基础的一周,每周一周,除非周数太大的目标年。在这种情况下,本周将被设置为一年的最后一周,与同一天的一周。
此单元是一个不可改变的线程安全的单。
public static WeekFields of(Locale locale)
WeekFields
适当现场实例。
这将从本地化数据提供程序中查找适当的值。
locale
-现场使用,不为空
public static WeekFields of(DayOfWeek firstDayOfWeek, int minimalDaysInFirstWeek)
WeekFields
实例从第一天的星期和最小的天。
一周的第一天定义ISO DayOfWeek
,是一星期中的1天。第一个星期的最少天数定义了一个月或一年内必须有多少天,从一周的第一天开始,在一周之前被计算为第一周。一个价值1将计数的第一天的一个月或一年的第一周的一部分,而7的价值将需要整整七天,在新的一个月或一年。
weekfields实例是单身;为firstDayOfWeek
和minimalDaysInFirstWeek
的同一实例的每一个独特的组合将返回。
firstDayOfWeek
-一周的第一天,不为空
minimalDaysInFirstWeek
-在第一周的最小数量,从1到7
IllegalArgumentException
-如果最小天值小于或大于7
public DayOfWeek getFirstDayOfWeek()
每周的第一天因文化而变化。例如,美国利用星期日,而法国和ISO-8601标准利用星期一。此方法返回的第一天使用标准的DayOfWeek
枚举。
public int getMinimalDaysInFirstWeek()
被认为是定义一个月或一年的第一个星期的天数因文化的不同而不同。例如,该ISO-8601需要4天(半个星期以上)在计数的第一周是存在的。
public TemporalField dayOfWeek()
WeekFields
星期。
这是类似于ChronoField.DAY_OF_WEEK
但使用值,基于这WeekFields
星期。天的编号从1到7,first day-of-week
被赋值1。
例如,如果一周的第一天是星期日,那么将有价值1,与其他天不等,从星期一到星期六为7日为2。
相位解析解,局部一周将被转换为一个标准化的ChronoField
天周。每周一天必须在有效范围1至7。在这个类的其他领域建立日期使用标准的一天的一周。
public TemporalField weekOfMonth()
WeekFields
月周。
这代表了一个月内的数周的概念,在几个星期开始在一个固定的一天,如星期一。这场是典型的用dayOfWeek()
。
下周一(1)是本周开始在那里在一个月至少getMinimalDaysInFirstWeek()
天getFirstDayOfWeek()
。因此,一周可以开始了minDays
本月开始的前几天。如果第一周开始后一个月的开始,那么这段时间是零周(0)。
例如:
-如果一个月的第一天是星期一,一周开始在第一,如果这个月的第二天是星期一没有周zero
,第一周开始在第二和第一周zero
-如果一个月的第四天是星期一一星期的开始,在第四和第一至第三周zero
-如果一个月的第五天是星期一,星期二开始在第五和第一至第四周one
此字段可以使用任何日历系统。
在解析的解析阶段中,一个日期可以从一年、一个月、一个月、一个星期的一个星期。
在strict mode,所有四个领域对其有效值范围验证。月字段的一周进行验证,以确保产生的月份是请求的月份。
在smart mode,所有四个领域对其有效值范围验证。从0到6个月的一周进行验证,这意味着产生的日期可以在一个不同的一个月,指定。
在lenient mode,对有效值范围验证是年和星期。由此产生的日期计算相当于以下四阶段的方法。首先,在一月的第一个星期的第一天,在要求的一年中,创建一个日期。然后取一个月的一年,减去一个,并在几个月内添加量的日期。然后取一个月的一周,减去一个,并在几周内添加量的日期。最后,在本地化的周内调整到正确的一周。
public TemporalField weekOfYear()
WeekFields
今年周。
这代表了一年内几周的计数的概念开始在一个固定的一天,如星期一。这场是典型的用dayOfWeek()
。
下周一(1)是本周开始,一年有至少getMinimalDaysInFirstWeek()
天getFirstDayOfWeek()
。因此,一周可以开始到开始的一年前minDays
天。如果第一周开始后一年的开始,那么这段时间是零周(0)。
例如:
-如果一年中的第一天是星期一,一周开始在第一,如果一年中的第二天是星期一没有周zero
,第一周开始在第二和第一周zero
-如果一年中的第四天是星期一一星期的开始,在第四和第一至第三周zero
-如果一年中的第五天是星期一,星期二开始在第五和第一至第四周one
此字段可以使用任何日历系统。
在解析的解析阶段中,一个日期可以从一年、一周和一周的一周创建。
在strict mode,所有三个领域对其有效值范围验证。一年一周的现场进行验证,以确保产生的一年是一年的要求。
在smart mode,所有三个领域对其有效值范围验证。从0到54年的一周的实地验证,这意味着产生的日期可能是在一个不同的一年,指定。
在lenient mode,对有效值范围验证是年和星期。由此产生的日期计算相当于以下三阶段的方法。第一,在要求的一年的第一个星期的第一天,创建一个日期。然后采取一年的一周,减去一个,并添加量在几周内的日期。最后,在本地化的周内调整到正确的一周。
public TemporalField weekOfWeekBasedYear()
WeekFields
基础年。
这代表了一年内几周的计数的概念开始在一个固定的一天,如星期一,每周都属于整整一年。这场是典型的用dayOfWeek()
和weekBasedYear()
。
第一周(1)是本周开始的getFirstDayOfWeek()
那里至少有getMinimalDaysInFirstWeek()
天年。如果第一周开始后一年的开始,那么之前的时间是在上一年的最后一周。
例如:
-如果一年中的第一天是星期一,一周开始在1st
-如果一年中的第二天是星期一,一周开始在第二和第一,在以前的year
-上周,如果一年中的第四天是星期一,一周开始在第四和第一到第三是在此前year
-上周,如果一年中的第五天是星期一,星期二开始在第五和第一至第四周one
此字段可以使用任何日历系统。
在解析的解析阶段中,一个日期可以从一个周为基础的年,一周的一周和一周的一周来创建。
在strict mode,所有三个领域对其有效值范围验证。一年的一周进行验证,以确保结果的一周为基础的一年为基础的一年的要求。
在smart mode,所有三个领域对其有效值范围验证。基于周的一周的实地验证从1至53,这意味着产生的日期可以在接下来的一周为基础的一年,指定。
在lenient mode,对有效值范围验证是年和星期。由此产生的日期计算相当于以下三阶段的方法。第一,在第一周的第一天,在要求的一周的第一天,创建一个日期。然后以每周一周为基础的一年,减去一个,并添加量在几周内的日期。最后,在本地化的周内调整到正确的一周。
public TemporalField weekBasedYear()
WeekFields
基础年。
这代表了一年的概念开始在一个固定的一天,如星期一,每周都属于整整一年。这场是典型的用dayOfWeek()
和weekOfWeekBasedYear()
。
下周一(1)是本周开始,一年有至少getMinimalDaysInFirstWeek()
天getFirstDayOfWeek()
。因此,一周可能在一年开始前开始。如果第一周开始后一年的开始,那么之前的时间是在上一年的最后一周。
此字段可以使用任何日历系统。
在解析的解析阶段中,一个日期可以从一个周为基础的年,一周的一周和一周的一周来创建。
在strict mode,所有三个领域对其有效值范围验证。一年的一周进行验证,以确保结果的一周为基础的一年为基础的一年的要求。
在smart mode,所有三个领域对其有效值范围验证。基于周的一周的实地验证从1至53,这意味着产生的日期可以在接下来的一周为基础的一年,指定。
在lenient mode,对有效值范围验证是年和星期。由此产生的日期计算相当于以下三阶段的方法。第一,在第一周的第一天,在要求的一周的第一天,创建一个日期。然后以每周一周为基础的一年,减去一个,并添加量在几周内的日期。最后,在本地化的周内调整到正确的一周。
public boolean equals(Object object)
WeekFields
等于指定的对象。
比较是基于规则的整个状态,这是一周的第一天和最小的天。
equals
方法重写,继承类
Object
object
-其他规则相比,空返回false
Object.hashCode()
,
HashMap
public int hashCode()
WeekFields
哈希代码。
hashCode
方法重写,继承类
Object
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.