Java8 Date

作者: 熬夜的猫头鹰 | 来源:发表于2018-06-16 23:39 被阅读16次

    java8 Date

    Java日期时间API(java.time.Instant)中的Instant类表示时间线上的特定时刻。 该时刻被定义为自原点(称为时期)以来的偏移量。 起源于1970年1月1日 - 00:00 - 格林威治时间(GMT)。

    时间使用每天86.400秒测量,从原点向前移动。

    创建Instant对象

     Instant instant = Instant.now();
     
    

    日期计算

    • plusSeconds()
    • plusMillis()
    • plusNanos()
    • minusSeconds()
    • minusMillis()
    • minusNanos()
    Instant now     = Instant.now();
    
    Instant later   = now.plusSeconds(3);
    Instant earlier = now.minusSeconds(3);
    
    

    Duration

    持续时间实例是不可变的,因此一旦创建,您将无法更改其值。 但是,您可以通过计算方法基于另一个Duration对象创建新的Duration对象。 您将看到本教程的后续内容。

    创建Duration
    Instant first = Instant.now();
    
    // wait some time while something happens
    
    Instant second = Instant.now();
    
    
    Duration duration = Duration.between(first, second);
    
    
    时间转化
    • getNano()

    • getSeconds()

    • toNanos()

    • toMillis()

    • toMinutes()

    • toHours()

    • toDays()

    计算
    • plusNanos()
    • plusMillis()
    • plusSeconds()
    • plusMinutes()
    • plusHours()
    • plusDays()
    • minusNanos()
    • minusMillis()
    • minusSeconds()
    • minusMinutes()
    • minusHours()
    • minusDays()

    LocalDate

    创建 LocalDate
    LocalDate localDate = LocalDate.now();
    
    
    LocalDate localDate2 = LocalDate.of(2015, 12, 31);
    
    
    获取LocalDate 的相关数据
    • getYear()
    • getMonth()
    • getDayOfMonth()
    • getDayOfWeek()
    • getDayOfYear()
    LocalDate 的加减法
    • plusDays()
    • plusWeeks()
    • plusMonths()
    • plusYears()
    • minusDays()
    • minusWeeks()
    • minusMonths()
    • minusYears()

    LocalTime

    创建对象
     LocalTime localTime = LocalTime.now();
     
    
    LocalTime localTime2 = LocalTime.of(21, 30, 59, 11001);
    
    
    LocalTime 获取相关信息
    • getHour()
    • getMinute()
    • getSecond()
    • getNano()
    LocalTime 计算
    • plusHours()
    • plusMinutes()
    • plusSeconds()
    • plusNanos()
    • minusHours()
    • minusMinutes()
    • minusSeconds()
    • minusNanos()

    LocalDateTime

    创建实例
    LocalDateTime localDateTime = LocalDateTime.now();
    
    
    LocalDateTime localDateTime2 =
        LocalDateTime.of(2015, 11, 26, 13, 55, 36, 123);
        
    
    • getYear()
    • getMonth()
    • getDayOfMonth()
    • getDayOfWeek()
    • getDayOfYear()
    • getHour()
    • getMinute()
    • getSecond()
    • getNano()
    计算
    • plusYears()
    • plusMonths()
    • plusDays()
    • plusHours()
    • plusMinutes()
    • plusSeconds()
    • plusNanos()
    • minusYears()
    • minusMonths()
    • minusDays()
    • minusHours()
    • minusMinutes()
    • minusSeconds()
    • minusNanos()

    DateTimeFormatter

    DateTimeFormatter类包含一组预定义(常量)实例,可以从标准日期格式解析和格式化日期。 这样可以节省定义DateTimeFormatter的日期格式的麻烦。 DateTimeFormatter类包含以下预定义实例:

    BASIC_ISO_DATE
    
    ISO_LOCAL_DATE
    ISO_LOCAL_TIME
    ISO_LOCAL_DATE_TIME
    
    ISO_OFFSET_DATE
    ISO_OFFSET_TIME
    ISO_OFFSET_DATE_TIME
    
    ISO_ZONED_DATE_TIME
    
    ISO_INSTANT
    
    ISO_DATE
    ISO_TIME
    ISO_DATE_TIME
    
    ISO_ORDINAL_TIME
    ISO_WEEK_DATE
    
    RFC_1123_DATE_TIME
    
    
    DateTimeFormatter formatter = DateTimeFormatter.BASIC_ISO_DATE;
    
    String formattedZonedDate = formatter.format(ZonedDateTime.now());
    System.out.println("formattedZonedDate = " + formattedZonedDate);
    
    

    可以使用ofpattern

    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
    System.err.println(dateTimeFormatter.format(LocalDateTime.now()));
    
    

    输出

    2017-05-12 16:00:41
    
    

    相关文章

      网友评论

        本文标题:Java8 Date

        本文链接:https://www.haomeiwen.com/subject/ynrieftx.html