java 初始化duration_java11教程--类Duration用法

基于时间的时间量,例如'34.5秒'。

此类以秒和纳秒为单位模拟时间量或时间量。 可以使用其他基于持续时间的单位访问它,例如分钟和小时。 此外, DAYS单元可以使用,并且被视为完全等于24小时,因此忽略了夏令时效果。 有关此类的基于日期的等效项,请参阅Period 。

物理持续时间可以是无限长度。 为了实用,持续时间存储的约束类似于Instant 。 持续时间使用纳秒分辨率,最大值可以保存在long 。 这大于当前估计的宇宙年龄。

持续时间范围需要存储大于long 。 为了实现这一点,类存储long表示秒数和int表示纳秒的秒,这将始终为0和999,999,999之间。 该模型具有定向持续时间,意味着持续时间可能是负的。

持续时间以“秒”测量,但这些不一定与基于原子钟的科学“SI秒”定义相同。 这种差异仅影响在闰秒附近测量的持续时间,并且不应影响大多数应用。 有关第二个和时间尺度的含义的讨论,请参见Instant 。

在Duration实例上使用身份敏感操作(包括引用相等( == ),标识哈希码或同步)可能会产生不可预测的结果,应该避免使用。 equals方法应该用于比较。

持续时间为零。

返回此持续时间的副本,长度为正。

将此持续时间添加到指定的时态对象。

获得表示两个时间对象之间的持续时间的

Duration 。

将此持续时间与指定的

Duration 。

返回此持续时间的副本除以指定的值。

返回指定持续时间在此持续时间内发生的整数次数。

检查此持续时间是否等于指定的

Duration 。

从时间量获得

Duration的实例。

获取所请求单元的值。

获取此持续时间内秒数内的纳秒数。

获取此持续时间内的秒数。

获取此持续时间支持的单位集。

此持续时间的哈希码。

检查此持续时间是否为负,不包括零。

检查此持续时间是否为零长度。

返回此持续时间的副本,并减去指定的持续时间。

返回此持续时间的副本,并减去指定的持续时间。

返回此持续时间的副本,并在标准的24小时内减去指定的持续时间。

返回此持续时间的副本,并减去指定的持续时间(以小时为单位)。

返回此持续时间的副本,并减去指定的持续时间(以毫秒为单位)。

返回此持续时间的副本,并减去指定的持续时间(以分钟为单位)。

返回此持续时间的副本,并减去指定的持续时间(以纳秒为单位)。

返回此持续时间的副本,并减去指定的持续时间(以秒为单位)。

返回此持续时间的副本乘以标量。

返回此持续时间的副本,其长度为negated。

获得

Duration表示指定单位的金额。

获得

Duration代表多个标准24小时工作日。

获得代表若干标准小时数的

Duration 。

获得表示毫秒数的

Duration 。

获得代表若干标准分钟的

Duration 。

获得代表若干纳秒的

Duration 。

获得代表若干秒的

Duration 。

获得表示数秒的

Duration和以纳秒为单位的调整。

获得

Duration从文本字符串,如

PnDTnHnMn.nS 。

返回此持续时间的副本,并添加指定的持续时间。

返回此持续时间的副本,并添加指定的持续时间。

返回此持续时间的副本,并在标准的24小时内添加指定的持续时间。

返回此持续时间的副本,并指定持续时间(以小时为单位)。

返回此持续时间的副本,其中包含指定的持续时间(以毫秒为单位)。

返回此持续时间的副本,并添加指定的持续时间(分钟)。

返回此持续时间的副本,并添加指定的持续时间(以纳秒为单位)。

返回此持续时间的副本,并添加指定的持续时间(以秒为单位)

从指定的时态对象中减去此持续时间。

获取此持续时间内的天数。

提取持续时间内的天数。

获取此持续时间内的小时数。

提取持续时间中的小时数。

将此持续时间转换为总长度(以毫秒为单位)。

提取持续时间部分的毫秒数。

获取此持续时间内的分钟数。

提取持续时间中的分钟数。

将此持续时间转换为以纳秒为单位的总长度,表示为

long 。

在持续时间的几秒内获得纳秒部分。

获取此持续时间内的秒数。

提取持续时间中的秒数。

使用基于ISO-8601秒的表示形式的此持续时间的字符串表示形式,例如

PT8H6M12.345S 。

返回截断到指定单位的此

Duration的副本。

使用指定的纳秒数返回此持续时间的副本。

以指定的秒数返回此持续时间的副本。

持续时间为零。

获得代表多个标准24小时工作日的Duration 。

秒数是根据一天的标准定义计算的,其中每天是86400秒,这意味着每天24小时。 第二场中的纳秒设置为零。

获得代表若干标准小时数的Duration 。

秒数基于一小时的标准定义计算,其中每小时为3600秒。 第二场中的纳秒设置为零。

获得代表若干标准分钟的Duration 。

秒数基于分钟的标准定义计算,其中每分钟为60秒。 第二场中的纳秒设置为零。

获得表示若干秒的Duration 。

第二场中的纳秒设置为零。

获得表示数秒的Duration和以纳秒为单位的调整。

该方法允许传入任意数量的纳秒。工厂将改变秒和纳秒的值,以确保存储的纳秒在0到999,999,999的范围内。 例如,以下内容将导致完全相同的持续时间:

Duration.ofSeconds(3, 1);

Duration.ofSeconds(4, -999_999_999);

Duration.ofSeconds(2, 1000_000_001);

获得表示数毫秒的Duration 。

从指定的毫秒提取秒和纳秒。

获得表示若干纳秒的Duration 。

从指定的纳秒提取秒和纳秒。

获得Duration表示指定单位的金额。

参数代表短语的两个部分,如“6小时”。 例如:

Duration.of(3, SECONDS);

Duration.of(465, HOURS);

此方法仅接受单位的子集。

其他单位抛出异常。

从时间量获得Duration的实例。

这将根据指定的金额获得持续时间。 TemporalAmount表示该工厂提取到持续时间的时间量,其可以是基于日期的或基于时间的。

转换从金额围绕单位集循环,并使用单位的duration来计算总计Duration 。 此方法仅接受单位的子集。 如果找到任何其他单位,则抛出异常。

获得Duration从文本字符串,如PnDTnHnMn.nS 。

这将解析持续时间的文本表示,包括由toString()生成的字符串。 接受的格式基于ISO-8601持续时间格式PnDTnHnMn.nS ,天数被认为是24小时。

该字符串以可选符号开头,由ASCII否定符号或正符号表示。 如果是否定的,整个时期都会被否定。 ASCII字母“P”接下来是大写或小写。 然后有四个部分,每个部分由数字和后缀组成。 这些部分的ASCII为“D”,“H”,“M”和“S”的后缀为天,小时,分钟和秒,以大写或小写形式接受。 后缀必须按顺序出现。 ASCII字母“T”必须出现在第一次出现(如果有)小时,分钟或秒节之前。 必须存在四个部分中的至少一个,并且如果存在“T”,则在“T”之后必须存在至少一个部分。 每个部分的数字部分必须包含一个或多个ASCII数字。 该数字可以以ASCII否定符号或正符号作为前缀。 天数,小时数和分钟数必须解析为long 。 必须使用可选分数解析为long的秒数。 小数点可以是点或逗号。 小数部分可以具有从0到9的数字。

前导加号/减号以及其他单位的负值不属于ISO-8601标准。

例子:

"PT20.345S" -- parses as "20.345 seconds"

"PT15M" -- parses as "15 minutes" (where a minute is 60 seconds)

"PT10H" -- parses as "10 hours" (where an hour is 3600 seconds)

"P2D" -- parses as "2 days" (where a day is 24 hours or 86400 seconds)

"P2DT3H4M"-- parses as "2 days, 3 hours and 4 minutes"

"PT-6H3M"-- parses as "-6 hours and +3 minutes"

"-PT6H3M"-- parses as "-6 hours and -3 minutes"

"-PT-6H+3M"-- parses as "+6 hours and -3 minutes"

获得表示两个时间对象之间的持续时间的Duration 。

这计算两个时间对象之间的持续时间。 如果对象具有不同类型,则基于第一对象的类型计算持续时间。 例如,如果第一个参数是LocalTime则第二个参数将转换为LocalTime 。

指定的临时对象必须支持SECONDS单元。

如果结束在开始之前,则该方法的结果可以是负周期。 为了保证获得正的持续时间,请在结果上拨打abs() 。

获取所请求单元的值。

这将返回两个受支持单位SECONDS和NANOS中的每一个的值。 所有其他单位都抛出异常。

获取此持续时间支持的单位集。

它们按秒纳米的顺序返回。

此组可与get(TemporalUnit)结合使用以访问持续时间的整个状态。

检查此持续时间是否为零长度。

Duration表示时间线上两点之间的定向距离,因此可以是正,零或负。 此方法检查长度是否为零。

检查此持续时间是否为负,不包括零。

Duration表示时间线上两点之间的定向距离,因此可以是正的,零或负的。 此方法检查长度是否小于零。

获取此持续时间内的秒数。

持续时间的长度使用两个字段存储 - 秒和纳秒。 纳秒部分是0到999,999,999之间的值,它是对长度的调整,以秒为单位。 通过调用此方法和getNano()定义总持续时间。

Duration表示时间线上两点之间的定向距离。 负秒持续时间由秒部分的负号表示。 -1纳秒的持续时间存储为-1秒加999,999,999纳秒。

获取此持续时间内秒数内的纳秒数。

持续时间的长度使用两个字段存储 - 秒和纳秒。 纳秒部分是0到999,999,999之间的值,它是对长度的调整,以秒为单位。 通过调用此方法和getSeconds()定义总持续时间。

Duration表示时间线上两点之间的定向距离。 负秒持续时间由秒部分的负号表示。 -1纳秒的持续时间存储为-1秒加999,999,999纳秒。

以指定的秒数返回此持续时间的副本。

这将返回指定秒数的持续时间,保留此持续时间的纳秒级。

此实例是不可变的,不受此方法调用的影响。

使用指定的纳秒数返回此持续时间的副本。

这将返回指定的纳秒数的持续时间,保留此持续时间的秒部分。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并添加指定的持续时间。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并添加指定的持续时间。

持续时间金额以指定单位计量。 此方法仅接受单位的子集。 其他单位抛出异常。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并在标准的24小时内添加指定的持续时间。

将天数乘以86400以获得要添加的秒数。 这是基于24小时的标准定义。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并指定持续时间(以小时为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并添加指定的持续时间(分钟)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并添加指定的持续时间(以秒为单位)

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,其中包含指定的持续时间(以毫秒为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并添加指定的持续时间(以纳秒为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间。

持续时间金额以指定单位计量。 此方法仅接受单位的子集。 其他单位抛出异常。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并在标准的24小时内减去指定的持续时间。

将天数乘以86400以获得减去的秒数。 这是基于24小时的标准定义。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间(以小时为单位)。

小时数乘以3600以获得减去的秒数。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间(以分钟为单位)。

小时数乘以60以获得减去的秒数。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间(以秒为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间(以毫秒为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,并减去指定的持续时间(以纳秒为单位)。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本乘以标量。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本除以指定的值。

此实例是不可变的,不受此方法调用的影响。

返回指定持续时间在此持续时间内发生的整数次数。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,其长度为negated。

此方法交换此持续时间总长度的符号。 例如, PT1.3S将作为PT-1.3S返回。

此实例是不可变的,不受此方法调用的影响。

返回此持续时间的副本,长度为正。

此方法通过有效地从任何负总长度中删除符号来返回正持续时间。 例如, PT-1.3S将作为PT1.3S返回。

此实例是不可变的,不受此方法调用的影响。

将此持续时间添加到指定的时态对象。

这将返回与添加了此持续时间的输入相同的可观察类型的时间对象。

// these two lines are equivalent, but the second approach is recommended

dateTime = thisDuration.addTo(dateTime);

dateTime = dateTime.plus(thisDuration);

计算将添加秒,然后纳米。 仅添加非零金额。

此实例是不可变的,不受此方法调用的影响。

从指定的时态对象中减去此持续时间。

这将返回与输入相同的可观察类型的时间对象,并减去此持续时间。

// these two lines are equivalent, but the second approach is recommended

dateTime = thisDuration.subtractFrom(dateTime);

dateTime = dateTime.minus(thisDuration);

计算将减去秒,然后减去纳米。 仅添加非零金额。

此实例是不可变的,不受此方法调用的影响。

获取此持续时间内的天数。

这将通过将秒数除以86400来返回持续时间中的总天数。这基于一天的标准定义为24小时。

此实例是不可变的,不受此方法调用的影响。

获取此持续时间内的小时数。

这将通过将秒数除以3600来返回持续时间中的总小时数。

此实例是不可变的,不受此方法调用的影响。

获取此持续时间内的分钟数。

这将通过将秒数除以60来返回持续时间内的总分钟数。

此实例是不可变的,不受此方法调用的影响。

获取此持续时间内的秒数。

这将返回持续时间中的整秒数。

此实例是不可变的,不受此方法调用的影响。

将此持续时间转换为总长度(以毫秒为单位)。

如果此持续时间太大而无法容纳long毫秒,则会引发异常。

如果此持续时间具有大于毫秒的精度,则转换将丢弃任何多余的精度信息,就好像以纳秒为单位的整数除以一百万。

将此持续时间转换为以纳秒为单位的总长度,表示为long 。

如果此持续时间太大而无法容纳long纳秒,则会引发异常。

提取持续时间内的天数。

这将通过将秒数除以86400来返回持续时间中的总天数。这基于一天的标准定义为24小时。

此实例是不可变的,不受此方法调用的影响。

提取持续时间中的小时数。

这将返回一天中toHours()除以小时数的剩余小时数。 这是基于24小时的标准定义。

此实例是不可变的,不受此方法调用的影响。

提取持续时间中的分钟数。

这将返回以小时为单位将toMinutes()除以分钟数时的剩余分钟数。 这是基于一小时的标准定义为60分钟。

此实例是不可变的,不受此方法调用的影响。

提取持续时间中的秒数。

这将在一分钟内将toSeconds()除以秒时返回剩余秒数。 这基于分钟的标准定义为60秒。

此实例是不可变的,不受此方法调用的影响。

提取持续时间部分的毫秒数。

这通过将纳秒数除以1,000,000来返回毫秒部分。 持续时间的长度使用两个字段存储 - 秒和纳秒。 纳秒部分是0到999,999,999之间的值,它是对长度的调整,以秒为单位。

此实例是不可变的,不受此方法调用的影响。

在持续时间的几秒内获得纳秒部分。

持续时间的长度使用两个字段存储 - 秒和纳秒。 纳秒部分是0到999,999,999之间的值,它是对长度的调整,以秒为单位。

此实例是不可变的,不受此方法调用的影响。

返回截断到指定单位的此Duration的副本。

截断持续时间会返回原始副本,其中概念字段小于指定的单位设置为零。 例如,使用MINUTES单位截断将向下舍入为零到最接近的分钟,将秒和纳秒设置为零。

此实例是不可变的,不受此方法调用的影响。

将此持续时间与指定的Duration 。

比较基于持续时间的总长度。 它与“等于”一致,如Comparable所定义。

检查此持续时间是否等于指定的Duration 。

比较基于持续时间的总长度。

此持续时间的哈希码。

使用基于ISO-8601秒的表示形式的此持续时间的字符串表示形式,例如PT8H6M12.345S 。

返回字符串的格式为PTnHnMnS ,其中n是持续时间的相关小时,分钟或秒。 在秒节中的小数点后面放置任何小数秒。 如果某个部分的值为零,则省略该部分。 小时,分钟和秒都将具有相同的符号。

例子:

"20.345 seconds" -- "PT20.345S

"15 minutes" (15 * 60 seconds) -- "PT15M"

"10 hours" (10 * 3600 seconds) -- "PT10H"

"2 days" (2 * 86400 seconds) -- "PT48H"

请注意,24小时的倍数不会作为天数输出,以避免与Period混淆。

字段

变量和类型

字段

描述

持续时间为零。变量和类型

方法

描述

返回此持续时间的副本,长度为正。

将此持续时间添加到指定的时态对象。

Temporal startInclusive, Temporal endExclusive)

获得表示两个时间对象之间的持续时间的

Duration 。

int

将此持续时间与指定的

Duration 。

返回此持续时间的副本除以指定的值。

long

返回指定持续时间在此持续时间内发生的整数次数。

boolean

Object otherDuration)

检查此持续时间是否等于指定的

Duration 。

从时间量获得

Duration的实例。

long

获取所请求单元的值。

int

获取此持续时间内秒数内的纳秒数。

long

获取此持续时间内的秒数。

int

此持续时间的哈希码。

boolean

检查此持续时间是否为负,不包括零。

boolean

检查此持续时间是否为零长度。

TemporalUnit unit)

返回此持续时间的副本,并减去指定的持续时间。

返回此持续时间的副本,并减去指定的持续时间。

返回此持续时间的副本,并在标准的24小时内减去指定的持续时间。

返回此持续时间的副本,并减去指定的持续时间(以小时为单位)。

返回此持续时间的副本,并减去指定的持续时间(以毫秒为单位)。

返回此持续时间的副本,并减去指定的持续时间(以分钟为单位)。

返回此持续时间的副本,并减去指定的持续时间(以纳秒为单位)。

返回此持续时间的副本,并减去指定的持续时间(以秒为单位)。

返回此持续时间的副本乘以标量。

返回此持续时间的副本,其长度为negated。

TemporalUnit unit)

获得

Duration表示指定单位的金额。

获得

Duration代表多个标准24小时工作日。

获得代表若干标准小时数的

Duration 。

获得表示毫秒数的

Duration 。

获得代表若干标准分钟的

Duration 。

获得代表若干纳秒的

Duration 。

获得代表若干秒的

Duration 。

获得表示数秒的

Duration和以纳秒为单位的调整。

获得

Duration从文本字符串,如

PnDTnHnMn.nS 。

TemporalUnit unit)

返回此持续时间的副本,并添加指定的持续时间。

返回此持续时间的副本,并添加指定的持续时间。

返回此持续时间的副本,并在标准的24小时内添加指定的持续时间。

返回此持续时间的副本,并指定持续时间(以小时为单位)。

返回此持续时间的副本,其中包含指定的持续时间(以毫秒为单位)。

返回此持续时间的副本,并添加指定的持续时间(分钟)。

返回此持续时间的副本,并添加指定的持续时间(以纳秒为单位)。

返回此持续时间的副本,并添加指定的持续时间(以秒为单位)

从指定的时态对象中减去此持续时间。

long

获取此持续时间内的天数。

long

提取持续时间内的天数。

long

获取此持续时间内的小时数。

int

提取持续时间中的小时数。

long

将此持续时间转换为总长度(以毫秒为单位)。

int

提取持续时间部分的毫秒数。

long

获取此持续时间内的分钟数。

int

提取持续时间中的分钟数。

long

将此持续时间转换为以纳秒为单位的总长度,表示为

long 。

int

在持续时间的几秒内获得纳秒部分。

long

获取此持续时间内的秒数。

int

提取持续时间中的秒数。

使用基于ISO-8601秒的表示形式的此持续时间的字符串表示形式,例如

PT8H6M12.345S 。

使用指定的纳秒数返回此持续时间的副本。

以指定的秒数返回此持续时间的副本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值