【java】JDK8 时间相关类

时间

Date类

  1. Zoneid

         //创建对象
         Zoneid z=Zoneid.of("Asia/Shanghai");
         //返回时区集合
         Set<String> sets=ZoneId.getAvailableZoneIds();
    
  2. Instant

       //创建对象 
       Instant now=Instant.now();  //返回当前国际时间
       Instant inst1=Instant.ofEpochMilli(1000); //根据毫秒值创建对象
       Instant inst2 = Instant.ofEpochSecond(10);//根据秒值创建对象
       //创建对应时区的对象(ZoneDateTime)
       Zoneid zoneid = ZoneId.of("Asia/Shanghai");   
       ZonedDateTime zonedDateTime = instant.atZone(zoneId);   //atzone(Zoneid z) 返回ZoneDateTime类型
    
  3. ZonedDateTime

       //创建对象 
       ZonedDateTime zonedDateTime1=ZonedDateTime.now();//默认返回系统时区对应时间对象
       ZonedDateTime zonedDateTime2=ZonedDateTime.now(ZoneId.of("Asia/Shanghai"));//根据时区创建当前时间对象
       ZonedDateTime zonedDateTime3=ZonedDateTime.of(xxx); //of中可以填入许多类型参数,根据该参数来创建对象
    

SimpleDateformat类

  1. DateTimeFormatter
```java
   //按照格式创建对象
   DateTimeFormatter dateTimeFormatter=DateTimeFormatter.ofPattern("yyyy年MM月dd日");
   //按照时间对象返回对应格式的字符串
   String str=dateTimeFormatter.format(ZonedDateTime.now());
```

Calendar类

  1. LocalDate(跟日期相关)

        //创建对象
        LocalDate localDate1=LocalDate.now();
        LocalDate localDate2=LocalDate.of(2022,7,1);
       //获取对应信息
        xxx t=localDate1.getXXX(xxx);
    

    在这里插入图片描述

  2. LocalTime(跟时间相关)

         //创建对象
         LocalTime localTime1 = LocalTime.now();
         LocalTime localTime2 = LocalTime.of(12, 11, 1); //12时11分1秒
        //获取对应信息
        //通过get函数
    

    在这里插入图片描述

  3. LocalDateTime (跟日期时间有关)

        //创建对象
         LocalDateTime localDateTime1=LocalDateTime.now();//默认为系统时区的当前时间
         LocalDateTime localDateTime2=LocalDateTime.of(); //of中可以填入相关信息来创建对象
    

在这里插入图片描述

工具类 (计算时间间隔)

  1. Duration (秒,纳秒)

             //创建间隔对象(参数为时间对象,且要精准到时间,不能是日期类对象)
             Duration between = Duration.between(zonedDateTime1, zonedDateTime2);
             //转换
             between.to();
    

    在这里插入图片描述

  2. period(年,月,日)

             //创建日期间隔对象   
             Period period=Period.between(localDate1,localDate2);
             //转换
             period.get();//将间隔转换为对应单位
    

在这里插入图片描述

  1. ChronoUnit

            //直接使用该类的枚举来获取对应单位的时间间隔
            long chronicUnit1=ChronoUnit.DAYS.between(localDate1,localDate2);
            long chronicUnit2=ChronoUnit.MONTHS.between(localDate1,localDate2);
            long chronicUnit3=ChronoUnit.YEARS.between(localDate1,localDate2);
    
  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值