- java.lang.Object
-
- javafx.util.Duration
-
- All Implemented Interfaces:
-
Serializable,Comparable<Duration>
public class Duration extends Object implements Comparable<Duration>, Serializable
定义持续时间的类。 持续时间实例是不可变的,因此被替换而不是修改,类似于
BigDecimal。 持续时间可以使用构造函数创建,或静态构造方法之一,如seconds(double)或minutes(double)。- 从以下版本开始:
- JavaFX 2.0
- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 Duration(double millis)创建一个新的持续时间,具有潜在的分数毫秒分辨率。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 弃用的方法 Modifier and Type 方法 描述 Durationadd(Duration other)添加此实例和另一个Duration实例以返回一个新的Duration实例。intcompareTo(Duration d)比较由此对象和指定对象表示的持续时间。Durationdivide(double n)将此实例除以一个数字以返回一个新的Duration实例。Durationdivide(Duration other)已过时。这种方法通过不考虑单位产生令人惊讶的结果。 改用divide(double)。booleanequals(Object obj)指示一些其他对象是否等于此。booleangreaterThan(Duration other)如果指定的持续时间大于(>)此实例,则返回true。booleangreaterThanOrEqualTo(Duration other)如果指定的持续时间大于或等于(> =)此实例,则返回true。inthashCode()返回此Duration对象的哈希码。static Durationhours(double h)返回一个表示指定小时数的Duration实例的Factory方法。booleanisIndefinite()获取此Duration实例是否是不确定的。booleanisUnknown()获取此Duration实例是否为未知。booleanlessThan(Duration other)如果指定的持续时间小于(<),则返回true。booleanlessThanOrEqualTo(Duration other)如果指定的持续时间小于或等于(<=),则返回true。static Durationmillis(double ms)返回一个指定数毫秒的Duration实例的Factory方法。static Durationminutes(double m)返回一个表示指定分钟数的Duration实例的Factory方法。Durationmultiply(double n)将此实例与代表毫秒的数字相乘并返回新的持续时间。Durationmultiply(Duration other)已过时。这种方法通过不考虑单位产生令人惊讶的结果。 改用multiply(double)。Durationnegate()从此实例返回一个具有负数毫秒的新的Duration实例。static Durationseconds(double s)返回一个表示指定秒数的Duration实例的Factory方法。Durationsubtract(Duration other)从此实例中减去其他Duration实例以返回一个新的Duration实例。doubletoHours()返回此期间的小时数,如果期间为INDEFINITE,则为Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。doubletoMillis()返回此期间的毫秒数或Double.POSITIVE_INFINITY,如果期间为INDEFINITE,则返回NaN(如果期间为UNKNOWN)。doubletoMinutes()如果期间为INDEFINITE,则返回此期间的分钟数或Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。doubletoSeconds()返回此期间的秒数,如果期间为INDEFINITE,则返回Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。StringtoString()返回此Duration对象的字符串表示形式。static DurationvalueOf(String time)在一段指定时间内返回一个Duration实例的Factory方法。
-
-
-
方法详细信息
-
valueOf
public static Duration valueOf(String time)
在一段指定时间内返回一个Duration实例的Factory方法。 语法为“[number] [ms | s | m | h]”。- 参数
-
time- 正确格式化的非空字符串。 前导空格或尾随空格将无法正确解析。 如果时间为空,则抛出NullPointerException异常。 - 结果
-
一个持续时间由
time表示
-
millis
public static Duration millis(double ms)
返回一个指定数毫秒的Duration实例的Factory方法。- 参数
-
ms- 毫秒数 - 结果
- 指定毫秒数的Duration实例
-
seconds
public static Duration seconds(double s)
返回一个表示指定秒数的Duration实例的Factory方法。- 参数
-
s- 秒数 - 结果
- 指定秒数的Duration实例
-
minutes
public static Duration minutes(double m)
返回一个表示指定分钟数的Duration实例的Factory方法。- 参数
-
m- 分钟数 - 结果
- 指定分钟数的持续时间实例
-
hours
public static Duration hours(double h)
返回一个表示指定小时数的Duration实例的Factory方法。- 参数
-
h- 小时数 - 结果
- 一个表示指定小时数的持续时间实例
-
toMillis
public double toMillis()
返回此期间的毫秒数或Double.POSITIVE_INFINITY,如果期间为INDEFINITE,则返回NaN(如果期间为UNKNOWN)。- 结果
- 持续时间以毫秒为单位
-
toSeconds
public double toSeconds()
返回此期间的秒数,如果期间为INDEFINITE,则返回Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。- 结果
- 持续时间以秒为单位
-
toMinutes
public double toMinutes()
如果期间为INDEFINITE,则返回此期间的分钟数或Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。- 结果
- 持续时间以分数分钟
-
toHours
public double toHours()
返回此期间的小时数,如果期间为INDEFINITE,则为Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。- 结果
- 持续时间为小时
-
add
public Duration add(Duration other)
添加此实例和另一个Duration实例以返回一个新的Duration实例。 如果任一实例为INDEFINITE,请返回INDEFINITE。 如果任一实例为UNKNOWN,则返回UNKNOWN。 此方法不会更改被调用的持续时间实例的值。- 参数
-
other- 不能为空 - 结果
- 将这个持续时间添加到其他持续时间的结果。 这与millis + other.millis使用双重算术相同
-
subtract
public Duration subtract(Duration other)
从此实例中减去其他Duration实例以返回一个新的Duration实例。 如果任一实例为UNKNOWN,则返回UNKNOWN。 否则,如果任一实例为INDEFINITE,则返回INDEFINITE。 此方法不会更改被调用的持续时间实例的值。- 参数
-
other- 不能为空 - 结果
- 从该持续时间中减去其他持续时间的结果。 这与millis - other.millis使用双重算术相同
-
multiply
@Deprecated public Duration multiply(Duration other)
将此实例与一个数字相乘以返回一个新的Duration实例。 如果任一实例为INDEFINITE,请返回INDEFINITE。 如果“持续时间”实例为“未知”,则返回UNKNOWN。 此方法不会更改被调用的持续时间实例的值。- 参数
-
other- 不能为空 - 结果
- 这个持续时间与其他持续时间相乘的结果。 这与millis * other.millis使用双重算术相同
-
multiply
public Duration multiply(double n)
将此实例与代表毫秒的数字相乘并返回新的持续时间。 如果被叫的持续时间实例为INDEFINITE,则返回INDEFINITE。 如果被叫的持续时间实例为UNKNOWN,则返回UNKNOWN。 此方法不会更改被调用的持续时间实例的值。- 参数
-
n- 以分数毫秒为单位乘以的量 - 结果
- 这个持续时间与n相乘的结果。 这与使用双重算术的millis * n相同
-
divide
public Duration divide(double n)
将此实例除以一个数字以返回一个新的Duration实例。 如果被叫的持续时间实例为INDEFINITE,则返回INDEFINITE。 如果被叫的持续时间实例为UNKNOWN,则返回UNKNOWN。 此方法不会更改被调用的持续时间实例的值。- 参数
-
n- 以分数毫秒为单位的分数 - 结果
- 将这个持续时间除以n的结果。 这与使用双算术的millis / n相同
-
divide
@Deprecated public Duration divide(Duration other)
将此实例除以另一个持续时间以返回比率。 如果两个实例都是INDEFINITE,返回NaN。 如果此实例为INDEFINITE,则返回POSITIVE_INFINITY如果其他实例为INDEFINITE,则返回0.0。 此函数不会更改被调用的持续时间实例的值。- 参数
-
other- 不能为空 - 结果
- 这个持续时间除以另一个持续时间的结果。 这与使用双重算术的millis / other.millis相同
-
negate
public Duration negate()
从此实例返回一个具有负数毫秒的新的Duration实例。 例如,Duration.millis(50).negate()返回一个持续时间为-50毫秒。 如果被叫的持续时间实例为INDEFINITE,则返回INDEFINITE。 此函数不会更改被调用的持续时间实例的值。- 结果
- 否定这一持续时间的结果。 这与使用双重算术的-millis相同
-
isIndefinite
public boolean isIndefinite()
获取此Duration实例是否是不确定的。 如果持续时间等于Duration.INDEFINITE,则持续时间是不定期的。- 结果
- 如果此持续时间相当于Duration.INDEFINITE或Double.POSITIVE_INFINITY,则为true。
-
isUnknown
public boolean isUnknown()
获取此Duration实例是否为未知。 如果持续时间为Duration.UNKNOWN,则持续时间为未知。- 结果
- 如果此持续时间相当于Duration.UNKNOWN或Double.isNaN(millis),则为true
-
lessThan
public boolean lessThan(Duration other)
如果指定的持续时间小于(<),则返回true。 INDEFINITE被视为正无穷大。- 参数
-
other- 不能为空 - 结果
- 如果millis <other.millis使用双重算术,则为true
-
lessThanOrEqualTo
public boolean lessThanOrEqualTo(Duration other)
如果指定的持续时间小于或等于(<=),则返回true。 INDEFINITE被视为正无穷大。- 参数
-
other- 不能为空 - 结果
- 如果millis <= other.millis使用双重算术,则为true
-
greaterThan
public boolean greaterThan(Duration other)
如果指定的持续时间大于(>)此实例,则返回true。 INDEFINITE被视为正无穷大。- 参数
-
other- 不能为空 - 结果
- 如果millis> other.millis使用双重算术
-
greaterThanOrEqualTo
public boolean greaterThanOrEqualTo(Duration other)
如果指定的持续时间大于或等于(> =)此实例,则返回true。 INDEFINITE被视为正无穷大。- 参数
-
other- 不能为空 - 结果
- 如果millis> = other.millis则使用双重算术
-
toString
public String toString()
返回此Duration对象的字符串表示形式。
-
compareTo
public int compareTo(Duration d)
比较由此对象和指定对象表示的持续时间。 返回一个负整数,零或正整数,因为该持续时间小于,等于或大于指定的持续时间。- Specified by:
-
compareTo在接口Comparable<Duration> - 参数
-
d- 要比较的持续时间。 - 结果
- 负整数,零或正整数,因为该持续时间小于,等于或大于指定的持续时间。
-
equals
public boolean equals(Object obj)
指示一些其他对象是否等于此。- 重写:
-
equals在Object - 参数
-
obj- 与之比较的参考对象。 - 结果
-
true如果此对象等于obj参数;false否则。 - 另请参见:
-
Object.hashCode(),HashMap
-
hashCode
public int hashCode()
返回此Duration对象的哈希码。- 重写:
-
hashCode在Object - 结果
-
这个
Duration对象的哈希码。 - 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
-