Duration和Period的区别--通俗易懂

在jdk1.8以后,对表示日期时间的类型进行了重新分类,这里出现了2个新的类,Duraction 和Period

Duraction表示:时间的区间,用来度量秒和纳秒之间的时间值

Period表示:一段时间的区间,用来度量年月日和几天之间的时间值

那清楚了这个类度量的时间范围,那么操作api那岂不是易如反掌 

如果对LocalDate LocalTime LocalDateTime Instant不熟悉的,可以看LocalDate LocalTime LocalDateTime Instant的操作与使用

public static void testDuration() {
        LocalTime currentLocalTime = LocalTime.now();
        LocalTime stopLocalTime = LocalTime.of(19, 19, 19);
        Duration duration = Duration.between(currentLocalTime, stopLocalTime);
        System.out.println(duration);
        System.out.println(duration.isZero());            //Duration区间是否为0
        System.out.println(duration.isNegative());        //Duration区间是否为负
        
        System.out.println(duration.getSeconds());        //Duration区间值的秒数
        System.out.println(duration.getNano());            //Duration区间值的纳秒数
        System.out.println(duration.getUnits());        //Duration的度量单位
        
        System.out.println(duration.toDays());            //Duration区间相差几天
        System.out.println(duration.toHours());            //Duration区间差几小时
        System.out.println(duration.toMinutes());        //Duration区间相差几分钟
        System.out.println(duration.toMillis());        //Duration区间相差几毫秒
        
        //============ duration 时间区间的加减 省略  ============
    }
public static void testPeriod() {
        LocalDate localDate = LocalDate.now();
        LocalDate localDate2 = LocalDate.of(2020, 12, 12);
        Period period = Period.between(localDate, localDate2);
        
        System.out.println(period);
        
        System.out.println(period.isZero());            //区间是否为0        
        System.out.println(period.isNegative());        //区间是否为为负
        
        System.out.println(period.getYears());            //区间的相差几年
        System.out.println(period.getMonths());            //区间的相差几月
        System.out.println(period.getDays());            //区间的相差几日
        
        System.out.println(period.toTotalMonths());        //区间相差多少个月
        //============ duration 时间区间的加减 省略  ============
        
}

 

posted @ 2019-12-08 12:16  硝烟漫过十八岁  阅读(6740)  评论(0编辑  收藏  举报