Duration 类

定义

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

[Android.Runtime.Register("javax/xml/datatype/Duration", DoNotGenerateAcw=true)]
public abstract class Duration : Java.Lang.Object
[<Android.Runtime.Register("javax/xml/datatype/Duration", DoNotGenerateAcw=true)>]
type Duration = class
    inherit Object
继承
Duration
属性

注解

W3C XML 架构 1.0 规范中定义的时间跨度不可变表示形式。

Duration 对象表示公历时间的时间段,该时间段由六个字段组成, (年、月、天、小时、分钟和秒) 加上一个符号 (+/-) 字段。

前五个字段具有非负 (>=0) 整数或 null (表示该字段未) 设置,秒字段具有非负小数或 null。 负号表示持续时间为负。

此类提供了许多方法,使 XML 架构 1.0 的持续时间数据类型与勘误表一起使用变得容易。

<h2>Order relationship</h2>

Duration 对象只有部分顺序,其中两个值 A 和 B 可能任一:

<ol><li>A<B (A 短于 B) <li>A>B (A 长于 B) <li>A==B (A 和 B 的持续时间) <li>A<>B (A 和 B 之间的比较不确定) </ol>

例如,与一个月相比,30 天不能有意义。 方法 #compare(Duration duration) 实现此关系。

有关对象之间的Duration顺序关系的详细信息,#isLongerThan(Duration)请参阅 方法。

<h2>持续时间</h2 的操作>

此类提供一组基本的算术运算,例如加法、减法和乘法。 由于持续时间没有总顺序,因此某些操作组合可能会失败。 例如,不能从 1 个月减去 15 天。 有关可能发生这种情况的详细条件,请参阅这些方法的 javadoc。

此外,不提供持续时间除以数字,因为 Duration 类只能处理有限精度十进制数。 例如,一个不能表示 1 秒除以 3。

但是,可以将除数替换为 3,再乘以 0.3 或 0.333 等数字。

<h2>允许值<的范围/h2>

由于 某些 依赖于 Calendar 的操作Duration(即使Duration可以保留非常大或非常小的值),因此某些方法可能无法在此类 Duration上正常工作。 受影响的方法记录它们对 的 Calendar依赖关系。

在 1.5 中添加。

javax.xml.datatype.DurationJava 文档。

此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。

构造函数

Duration()
Duration(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

属性

Class

返回此 Object的运行时类。

(继承自 Object)
Days

获取 DAYS 字段的值作为整数值;如果不存在,则为 0。

Handle

基础 Android 实例的句柄。

(继承自 Object)
Hours

获取 HOURS 字段的值作为整数值;如果不存在,则为 0。

JniIdentityHashCode

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
JniPeerMembers

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

Minutes

获取 MINUTES 字段的值作为整数值;如果不存在,则为 0。

Months

获取月份字段的值作为整数值,如果不存在,则为 0。

PeerReference

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
Seconds

获取 SECONDS 字段的值作为整数值;如果不存在,则为 0。

Sign

以 -1,0 或 1 为单位返回此持续时间的符号。

ThresholdClass

此 API 支持 Mono for Android 基础结构,不应直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不应直接从代码使用。

XMLSchemaType

返回此实例映射到的 XML 架构日期/时间类型的名称。

Years

获取此 Duration 的年值,如果不存在, int 则为 或 0

方法

Add(Duration)

计算其值为 this+rhs的新持续时间。

AddTo(Calendar)

将此持续时间添加到 Calendar 对象。

AddTo(Date)

将此持续时间添加到 Date 对象。

Clone()

创建并返回此对象的副本。

(继承自 Object)
Compare(Duration)

与此 Duration 实例的部分顺序关系比较。

Dispose()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
Dispose(Boolean)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
Equals(Object)

指示其他某个对象是否“等于”此对象。

(继承自 Object)
GetField(DatatypeConstants+Field)

获取字段的值。

GetHashCode()

返回与 equals 方法的定义一致的哈希代码。

GetTimeInMillis(Calendar)

返回持续时间的长度(以毫秒为单位)。

GetTimeInMillis(Date)

返回持续时间的长度(以毫秒为单位)。

IsLongerThan(Duration)

检查此持续时间对象是否严格长于另一个 Duration 对象。

IsSet(DatatypeConstants+Field)

检查是否设置了字段。

IsShorterThan(Duration)

检查此持续时间对象是否严格短于另一个 Duration 对象。

JavaFinalize()

当垃圾回收确定不再引用对象时,由对象上的垃圾回收器调用。

(继承自 Object)
Multiply(BigDecimal)

计算其值 factor 比此持续时间值长一倍的新持续时间。

Multiply(Int32)

计算其值 factor 比此持续时间值长一倍的新持续时间。

Negate()

返回一个新的 Duration 对象,其值为 -this

NormalizeWith(Calendar)

通过使用特定时间即时作为参考点,将年和月字段转换为天字段。

Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
Subtract(Duration)

计算其值为 this-rhs的新持续时间。

ToArray<T>()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
Wait()

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)

显式接口实现

IJavaPeerable.Disposed()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.Finalized()

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

(继承自 Object)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

GetJniTypeName(IJavaPeerable)

W3C XML 架构 1 中定义的时间跨度不可变表示形式。

适用于