Date-Time API 中的基础类使用
1.常用类的概述与功能介绍
Instant 类
Instant 类对时间轴上的单一瞬时点建模,可以用于记录应用程序中的事件时间戳,在之后学习的类型转换中,均可以使用 Instant 类作为中间类完成转换。
Duration 类
Duration 类表示秒或纳秒时间间隔,适合处理较短的时间,需要更高的精确性。
Period 类
Period 类表示一段时间的年、月、日。
LocalDate 类
LocalDate 类是一个不可变的日期时间对象,表示日期,通常被视为年月日。
LocalTime 类
LocalTime 类是一个不可变日期时间的时间对象,代表是一个时间,通常背看作是小时-秒,时间表示为纳秒精度。
LocalDateTime 类
LocalDateTime 是一个不可变日期时间对象,代表日期时间,通常被视为年月日时分秒。
ZonedDateTime 类
ZonedDateTime 具有时区的日期时间不可变表示,此类存储所有日期和时间字段,精度为纳秒,时区为区域偏移量,用于处理模糊的本地日期时间。
?
2.Now 方法在日期/时间类中的使用
Date-Time API 中的所有类均生成不可变实例,它们是线程安全的,并且这些类不提供公共构造函数,也就是说没办法通过 new 的方式直接创建,需要采用工厂方法加以实例化。
练习:创建当前时间
//示例
//now 方法可以根据当前日期或时间创建示例对象
//使用 now 方法创建 Instant 的实例对象.
Instant instantNow = Instant.now();
//使用 now 方法创建 LocalDate 的实例对象.
LocalDate localDateNow = LocalDate.now();
//使用 now 方法创建 LocalTime 的实例对象.
LocalTime localTimeNow = LocalTime.now();
//使用 now 方法创建 LocalDateTime 的实例对象.
LocalDateTime localDateTimeNow = LocalDateTime.now();
//使用 now 方法创建 ZonedDateTime 的实例对象.
ZonedDateTime zonedDateTimeNow = ZonedDateTime.now();
?代码打印结果:
?
//示例
//now 方法创建 Year YearMonth MonthDay 类的实例对象
//使用now方法创建Year类的实例对象.
Year year = Year.now();
//使用now方法创建YearMonth类的实例对象.
YearMonth yearMonth = YearMonth.now();
//使用now方法创建MonthDay类的实例对象.
MonthDay monthDay = MonthDay.now();
代码打印结果:
?
|