Java 8在java.time包中提供了一个用于日期和时间的全新库,这对于以前必须使用JodaTime或使其成为自己的日期处理助手方法而感到烦恼的人来说,是一件非常受欢迎的事情。该程序包中的许多类都表示时间戳,并具有一些辅助方法,例如getHour()
从时间戳获取小时,从时间戳getMinute()
获取分钟,从时间戳getNano()
获取nano等。
我注意到他们没有一种方法getMillis()
来获取时间戳的毫秒数。相反,必须调用method get(ChronoField.MILLI_OF_SECOND)
。在我看来,这似乎是图书馆中的矛盾之处。有谁知道为什么缺少这种方法,或者由于Java 8仍在开发中,是否有可能稍后再添加呢?
https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
此处定义的类代表主要的日期时间概念,包括瞬间,持续时间,日期,时间,时区和时间段。它们基于ISO日历系统,这是遵循通用格里高利规则的事实世界日历。所有的类都是不可变的并且是线程安全的。
每个日期时间实例均由API方便提供的字段组成。对于较低级别的字段访问,请参考
java.time.temporal
软件包。每个类都支持打印和解析各种日期和时间。请参阅java.time.format
软件包以获取自定义选项...
此类示例:https :
//docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html
ISO-8601日历系统中没有时区的日期时间,例如2007-12-03T10:15:30。
LocalDateTime
是一个不变的日期时间对象,代表一个日期时间,通常被视为年-月-日-时-分-秒。也可以访问其他日期和时间字段,例如,一年中的某天,一周中的某天和一周中的某周。时间以纳秒精度表示。例如,值“ 2nd October 2007 at 13:45.30.123456789”可以存储在LocalDateTime
...中
Instant
类
get()
,而不是给它们单独的唯一名称。如果您不满意,请编写一个继承原始类的类,然后将您自己的getMillis()
方法放在新类中。