public enum ChronoUnit extends Enum<ChronoUnit> implements TemporalUnit
这套单元提供基于单元的访问来操作日期、时间或日期时间。单位的标准可以通过实施TemporalUnit
扩展。
这些单位的目的是适用于多个日历系统。例如,大多数非标准的日历系统定义了几年,几个月和几天的单位,只是有一点不同的规则。每个单元的文档解释了它如何操作。
Enum Constant and Description |
---|
CENTURIES
单位,代表了一个世纪的概念。
|
DAYS
代表一天的概念的单位。
|
DECADES
单位,代表了十年的概念。
|
ERAS
代表一个时代概念的单位。
|
FOREVER
代表永远的概念的人工单位。
|
HALF_DAYS
单位,代表了半天的概念,在上午/下午使用。
|
HOURS
表示一个小时的概念的单位。
|
MICROS
一个表示一个微秒的概念。
|
MILLENNIA
代表千年概念的单位。
|
MILLIS
表示毫秒的概念的单位。
|
MINUTES
表示一分钟的概念的单位。
|
MONTHS
表示一个月的概念的单位。
|
NANOS
单位,代表一个纳秒的概念,最小的支持单位的时间。
|
SECONDS
表示第二个概念的单位。
|
WEEKS
表示一周的概念的单位。
|
YEARS
代表一年的概念的单位。
|
Modifier and Type | Method and Description |
---|---|
<R extends Temporal> |
addTo(R temporal, long amount)
返回指定的时间对象的副本,添加指定的时间。
|
long |
between(Temporal temporal1Inclusive, Temporal temporal2Exclusive)
计算两个时间对象之间的时间量。
|
Duration |
getDuration()
获取此单元在异日历系统中的估计持续时间。
|
boolean |
isDateBased()
检查该单位是否是日期单位。
|
boolean |
isDurationEstimated()
检查该单位的持续时间是否是一个估计。
|
boolean |
isSupportedBy(Temporal temporal)
检查该单位是否被指定的时间对象支持。
|
boolean |
isTimeBased()
检查该单位是否是时间单位。
|
String |
toString()
返回此枚举常量的名称,包含在声明。
|
static ChronoUnit |
valueOf(String name)
返回此类型具有指定名称的枚举常量。
|
static ChronoUnit[] |
values()
返回一个数组包含该枚举类型的常量,它们的顺序声明。
|
public static final ChronoUnit NANOS
public static final ChronoUnit MICROS
public static final ChronoUnit MILLIS
public static final ChronoUnit SECONDS
public static final ChronoUnit MINUTES
public static final ChronoUnit HOURS
public static final ChronoUnit HALF_DAYS
public static final ChronoUnit DAYS
24 Hours
估计。
当与其他日历系统使用时,它必须对应于地球的太阳升起和设置所定义的一天。它不需要天开始在午夜-当日历系统之间的转换,日期应该是相当于中午。
public static final ChronoUnit WEEKS
当与其他日历系统使用时,它必须对应于一个整型数天。
public static final ChronoUnit MONTHS
365.2425 Days
。
当与其他日历系统使用时,它必须对应于一个整型数天。
public static final ChronoUnit YEARS
365.2425 Days
估计。
当与其他日历系统使用时,它必须对应于一个天或几个月的整数,大致相当于地球围绕太阳的通过所定义的一年的时间。
public static final ChronoUnit DECADES
当与其他日历系统使用时,它必须对应于一个不完整的天数,通常是一个不完整的数年。
public static final ChronoUnit CENTURIES
当与其他日历系统使用时,它必须对应于一个不完整的天数,通常是一个不完整的数年。
public static final ChronoUnit MILLENNIA
当与其他日历系统使用时,它必须对应于一个不完整的天数,通常是一个不完整的数年。
public static final ChronoUnit ERAS
当与其他日历系统一起使用时,没有对单位的限制。
1,000,000,000 Years
。
public static final ChronoUnit FOREVER
TemporalField
代表如今年或时代的无界领域。时代的估计时间是人为定义为最大持续时间由
Duration
。
public static ChronoUnit[] values()
对于(chronounit C:chronounit。values()) 系统,println(C);
public static ChronoUnit valueOf(String name)
name
-定要返回的枚举的名称。
IllegalArgumentException
-如果这个枚举类型,也没有固定的具有指定名称
NullPointerException
-如果参数为空
public Duration getDuration()
在这个类中的所有的单位有一个估计的持续时间。天因日光节约时间而变化,而几个月有不同的长度。
getDuration
接口
TemporalUnit
public boolean isDurationEstimated()
在这个类中的所有时间单位被认为是准确的,而在这一类中的所有日期单位被认为是估计。
这个定义忽略了跳跃秒,但认为,天有所不同,由于日光节约时间和几个月有不同的长度。
isDurationEstimated
接口
TemporalUnit
public boolean isDateBased()
所有的单位从天到时代包括日期为基础的。基于时间的单位和FOREVER
返回false。
isDateBased
接口
TemporalUnit
public boolean isTimeBased()
从纳米到一半天包容所有单位时间。基于日期的单位和FOREVER
返回false。
isTimeBased
接口
TemporalUnit
public boolean isSupportedBy(Temporal temporal)
TemporalUnit
此检查,执行日期时间可以添加/减去此单元。这可以用来避免抛出一个异常。
这是用Temporal.plus(long, TemporalUnit)
默认实现的价值。
isSupportedBy
接口
TemporalUnit
temporal
-检查时间的对象,不为空
public <R extends Temporal> R addTo(R temporal, long amount)
TemporalUnit
增加的周期是这个单位的倍数。例如,该方法可以用于在表示“日期”的实例上添加“3天”,表示“日期”,通过日期和期间“3”。被添加的期间可能是负的,这是相当于减法。
使用这种方法有两个等效的方法。首先是直接调用这个方法。二是用Temporal.plus(long, TemporalUnit)
:
这两条线是等价的,但第二种方法是建议时间=补充(时间)的经验;时间=时间+(经验);建议使用第二种方法,
plus(TemporalUnit)
,因为它是一个更清晰的读码。
实现应该执行任何查询或计算使用单位可在ChronoUnit
或ChronoField
可用字段。如果单位不支持UnsupportedTemporalTypeException
必须扔。
实现不能更改指定的时间对象。相反,必须返回原始的调整副本。这提供了等效,为不变的和可变的实现安全的行为。
addTo
接口
TemporalUnit
R
-时空对象的类型
temporal
-调整时间的对象,不为空
amount
-添加本单位的数量,阳性或阴性
public long between(Temporal temporal1Inclusive, Temporal temporal2Exclusive)
TemporalUnit
这计算该单位的金额。开始和结束点是作为时间对象提供的,必须是兼容类型的。实现将在计算量之前将第二类型转换为第一类型的实例。结果将是负的,如果结束之前开始。例如,在两个时空对象之间的时间量可以计算出使用HOURS.between(startTime, endTime)
。
计算返回一个整数,表示两世间万物之间的完整的单元数。例如,在时间之间的时间11:30和13:29量将只有一个小时,因为它是短暂的两小时一分钟。
使用这种方法有两个等效的方法。首先是直接调用这个方法。二是用Temporal.until(Temporal, TemporalUnit)
:
这两条线是等价的间=经验。之间(开始、结束);间=开始直到(最后的经验);的选择应基于使得代码更易读。
例如,该方法允许计算两个日期之间的天数:
长天=天之间(开始、结束);或替代长天=开始。直到(最后一天);
实现应该执行任何查询或计算使用单位可在ChronoUnit
或ChronoField
可用字段。如果单位不支持UnsupportedTemporalTypeException
必须扔。实现不能更改指定的时间对象。
between
接口
TemporalUnit
temporal1Inclusive
-基础时态对象,不为空
temporal2Exclusive
-其他时态对象,排斥,不为空
public String toString()
Enum
toString
接口
TemporalUnit
toString
方法重写,继承类
Enum<ChronoUnit>
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.