- 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 方法 描述 Duration
add(Duration other)
添加此实例和另一个Duration实例以返回一个新的Duration实例。int
compareTo(Duration d)
比较由此对象和指定对象表示的持续时间。Duration
divide(double n)
将此实例除以一个数字以返回一个新的Duration实例。Duration
divide(Duration other)
已过时。这种方法通过不考虑单位产生令人惊讶的结果。 改用divide(double)
。boolean
equals(Object obj)
指示一些其他对象是否等于此。boolean
greaterThan(Duration other)
如果指定的持续时间大于(>)此实例,则返回true。boolean
greaterThanOrEqualTo(Duration other)
如果指定的持续时间大于或等于(> =)此实例,则返回true。int
hashCode()
返回此Duration
对象的哈希码。static Duration
hours(double h)
返回一个表示指定小时数的Duration实例的Factory方法。boolean
isIndefinite()
获取此Duration实例是否是不确定的。boolean
isUnknown()
获取此Duration实例是否为未知。boolean
lessThan(Duration other)
如果指定的持续时间小于(<),则返回true。boolean
lessThanOrEqualTo(Duration other)
如果指定的持续时间小于或等于(<=),则返回true。static Duration
millis(double ms)
返回一个指定数毫秒的Duration实例的Factory方法。static Duration
minutes(double m)
返回一个表示指定分钟数的Duration实例的Factory方法。Duration
multiply(double n)
将此实例与代表毫秒的数字相乘并返回新的持续时间。Duration
multiply(Duration other)
已过时。这种方法通过不考虑单位产生令人惊讶的结果。 改用multiply(double)
。Duration
negate()
从此实例返回一个具有负数毫秒的新的Duration实例。static Duration
seconds(double s)
返回一个表示指定秒数的Duration实例的Factory方法。Duration
subtract(Duration other)
从此实例中减去其他Duration实例以返回一个新的Duration实例。double
toHours()
返回此期间的小时数,如果期间为INDEFINITE,则为Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。double
toMillis()
返回此期间的毫秒数或Double.POSITIVE_INFINITY,如果期间为INDEFINITE,则返回NaN(如果期间为UNKNOWN)。double
toMinutes()
如果期间为INDEFINITE,则返回此期间的分钟数或Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。double
toSeconds()
返回此期间的秒数,如果期间为INDEFINITE,则返回Double.POSITIVE_INFINITY,如果期间为UNKNOWN,则返回NaN。String
toString()
返回此Duration
对象的字符串表示形式。static Duration
valueOf(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)
-
-