Timestamp

一个用于表示 Unix 时间戳的类型。 是从 UTC 1970.01.01T00:00:00Z 直至现在所经过的时间, 常见的时间单位有秒或毫秒。

Timestamp 不是日期API ,而仅是一种忽略时间单位的时间戳包装体。 因此 Timestamp 本身不提供例如解析某格式的日期(例如 ISO-8601)或进行日期格式化等功能。

这些功能也许会在某些支持的特定平台上提供辅助实现(例如在JVM平台上使用 java.time 相关API)。

当然,也可以自行实现 Timestamp 来定制化其内部细节。

简单包装

Timestamp 是一种简单的包装类型,大多数情况下对外提供的 Timestamp 很可能是在保证结果一致的情况下即用即造的。 例如:

interface Foo {
val timestamp: Timestamp
}

class FooImpl : Foo {
val timestamp: Timestamp
get() = InternalTimestampImpl(time)
}

equals&hashCode

Timestamp 应支持与任意 Timestamp 类型进行匹配,但是无法保证 equals 结果为 true 的两个结果的 hashCode 相同。

MillisecondTimestamp

MillisecondTimestamp 是全平台的默认实现,提供一个毫秒值,进行一个简单的包装。

Author

ForteScarlet

Inheritors

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
abstract val milliseconds: Long

毫秒级时间戳结果。

Functions

Link copied to clipboard
open operator override fun compareTo(other: Timestamp): Int

默认情况下,Timestamp 通过 milliseconds 进行顺序比较。

Link copied to clipboard
open infix fun timeAs(unit: TimeUnit): Long

将时间戳时间转化为指定单位的结果。