jdk1.8新特性 时间日期 API

使用LocalDate、LocalTime、LocalDateTime

    1、LocalDate、LocalTime、LocalDateTime 类的实例是不可变的对象,分别表示使用ISO-8601日历系统的日期、时间、日期和时间。它们提供了简单的日期或时间,并不包含当前的时间信息。也不包含与时区相关的信息。

    注:ISO-8601日历系统是国际标准化组织制定的现代公民的日期和时间的表示法


Instant 时间戳

    1、用于“时间戳”的运算。它是以Unix元年(传统的设定为UTC时区1970年1月1日午夜时分)开始所经历的描述进行运算

Duration 和 Period

    1、Duration:用于计算两个“时间”间隔

    2、Period:用于计算两个“日期”间隔

日期的操纵

    1、TemporalAdjuster : 时间校正器。有时我们可能需要获取例如:将日期调整到“下个周日”等操作。

    2、TemporalAdjusters : 该类通过静态方法提供了大量的常用TemporalAdjuster 的实现。

// 例如 获取下个周日:
LocalDate nextSunday = LocalDate.now().with(
	TemporalAdjusters.next(DayOfWeek.SUNDAY)
);

解析与格式化

    java.time.format.DateTimeFormatter 类:该类提供了三种格式化方法:

        1、预定义的标准格式

        2、语言环境相关的格式

        3、自定义的格式

时区的处理

    Java8 中加入了对时区的支持,带时区的时间为分别为:ZonedDate、ZonedTime、ZonedDateTime
    其中每个时区都对应着ID,地区ID都为“{区域}/{城市}”的格式
    例如:Asia/Shanghai 等
              ZoneId:该类中包含了所有的时区信息
              getAvailableZoneIds() : 可以获取所有时区时区信息
              of(id) : 用指定的时区信息获取ZoneId 对象

与传统日期处理的转换

    

猜你喜欢

转载自blog.csdn.net/keith003/article/details/80253180