zoukankan      html  css  js  c++  java
  • java8计算时间差

    示例1:计算指定时间单位的时间差

    import java.time.Instant;
    import java.time.LocalDateTime;
    import java.time.temporal.ChronoUnit;

    // LocalDateTime fromDate= LocalDateTime.now();
    // LocalDateTime toDate= LocalDateTime.now();
    Instant fromDate=Instant.now();
    Instant toDate=Instant.now();
    long minutes = ChronoUnit.MINUTES.between(fromDate, toDate);
    long hours = ChronoUnit.HOURS.between(fromDate, toDate);

     注意:由于LocalDateTime和Instant是为不同的目的而设计的,一个是为了便于人阅读使用,另一个是为了便于机器处理,所以你不能将二者混用。

    不能向between方法传递一个LocalDate对象做参数,否则会抛异常 java.time.temporal.UnsupportedTemporalTypeException: Unsupported unit:

     

    示例2:计算你的年龄

    LocalDate today = LocalDate.now();
    LocalDate birthday = LocalDate.of(1996, Month.JANUARY, 1);
    
    Period p = Period.between(birthday, today);
    long p2 = ChronoUnit.DAYS.between(birthday, today);
    
    System.out.println("你活了" + p.getYears() + "年" + p.getMonths() +
                    "个月零" + p.getDays() +
                    " 天(共" + p2 + "天)");
     
    //输出:你活了22年11个月零18 天(共8388天)

    参考文档:https://docs.oracle.com/javase/tutorial/datetime/iso/period.html

  • 相关阅读:
    的地方d'fe'w
    日期
    equals方法
    接口作为成员变量类型
    匿名内部类注意事项
    匿名内部类
    局部内部类注意问题
    可以
    C中的volatile关键字
    继承权限问题
  • 原文地址:https://www.cnblogs.com/njl041x/p/10142451.html
Copyright © 2011-2022 走看看