LocalDateTime 使用 jdk8新增类

目录

LocalDateTime 时间转换


LocalDateTime 时间转换

//毫秒值
        long milli = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();

        //毫秒值转化时间戳
        DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
        LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(milli), ZoneId.of("Asia/Shanghai"));
        String format = df.format(localDateTime);
        System.out.println(format);

 

LocalDateTime基本使用

        // 2021-11-08T11:38:36.381
        LocalDateTime now = LocalDateTime.now();
        // 2021 获取日期的年
        int year = now.getYear();
        // NOVEMBER  所在的月
        Month month = now.getMonth();
        // 11   第几个月
        int monthValue = now.getMonthValue();
        // 312
        int dayOfYear = now.getDayOfYear();
        // 8
        int dayOfMonth = now.getDayOfMonth();
        // MONDAY
        DayOfWeek dayOfWeek = now.getDayOfWeek();
        // 1
        int dayOfWeekValue = dayOfWeek.getValue();
        // 11
        int hour = now.getHour();
        // 38
        int minute = now.getMinute();
        // 36
        int second = now.getSecond();

        long seconds = Instant.now().getEpochSecond();    // 秒时间戳(10位)
        long milliSeconds = Instant.now().toEpochMilli(); // 毫秒时间戳(13位)

        LocalDateTime dateTimeFromSecond = LocalDateTime.ofInstant(
                Instant.ofEpochSecond(seconds), ZoneOffset.ofHours(8)
        );  // 秒转datetime

        LocalDateTime dateTimeFromMilliSecond = LocalDateTime.ofInstant(
                Instant.ofEpochMilli(milliSeconds), ZoneOffset.ofHours(8)
        ); // 毫秒转datetime

 

自定义日期--日期减

 LocalDateTime dateTime = LocalDateTime.of(2020, 1, 29, 14, 35, 51); // 2020-01-29T14:35:51

        LocalDateTime localDateTime1 = dateTime.minusSeconds(1);            // 2020-01-29T14:35:50
        LocalDateTime localDateTime2 = dateTime.minusMinutes(1);            // 2020-01-29T14:34:51
        LocalDateTime localDateTime3 = dateTime.minusHours(1);              // 2020-01-29T13:35:51
        LocalDateTime localDateTime4 = dateTime.minusDays(1);               // 2020-01-28T14:35:51
        LocalDateTime localDateTime5 = dateTime.minusWeeks(1);              // 2020-01-22T14:35:51
        LocalDateTime localDateTime6 = dateTime.minusMonths(1);             // 2019-12-29T14:35:51
        LocalDateTime localDateTime7 = dateTime.minusYears(1);              // 2019-01-29T14:35:51

        System.out.println(localDateTime1);
        System.out.println(localDateTime2);
        System.out.println(localDateTime3);
        System.out.println(localDateTime4);
        System.out.println(localDateTime5);
        System.out.println(localDateTime6);
        System.out.println(localDateTime7);

Instant 类操作

 long second = Instant.now().getEpochSecond();          // 1636349708
        long milliSecond = Instant.now().toEpochMilli();       // 1636349708988
        Instant instant1 = Instant.ofEpochSecond(second);     //  2021-11-08T05:35:08Z
        Instant instant2 = Instant.ofEpochMilli(milliSecond); //  2021-11-08T05:35:08.988Z
        System.out.println(second);
        System.out.println(milliSecond);
        System.out.println(instant1);
        System.out.println(instant2);

Duration类,求时间差,天数差。

        Duration duration = Duration.between(
                LocalDateTime.now(), LocalDateTime.now().plusDays(1)
        );  // PT24H
        long seconds = duration.getSeconds();             // 86400
        long seconds2 = duration.get(ChronoUnit.SECONDS); // 86400
        long days1 = duration.toDays();                     // 1

        Duration ofDays = Duration.ofDays(1);             // PT24H
        Duration ofHours = Duration.ofHours(1);           // PT1H
        Duration ofMinutes = Duration.ofMinutes(1);       // PT1M
        Duration ofSeconds = Duration.ofSeconds(1);       // PT1S

        System.out.println(days1);
        System.out.println(ofDays);

参考资料: 

LocalDateTime用法大全_博学de叫兽-CSDN博客_localdatetime使用常规使用LocalDateTime now = LocalDateTime.now(); // 2020-01-29T14:35:51.207int year = now.getYear(); // 2020Month month = now.getMonth(); // JANUARYint monthValue = now...https://blog.csdn.net/u012102104/article/details/104106787

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值