码迷,mamicode.com
首页 > 编程语言 > 详细

java8 time计算时间差

时间:2019-12-17 18:46:07      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:local   lis   temp   示例   ===   second   hal   day   代码   

最近使用Java8编写代码时,需要计算时间差,现整理如下

前言

本次使用了Java8提供的ChronoUnit工具类,它主要提供以下几种时间维度

枚举

枚举 说明
NANOS 毫微秒(毫秒的1000000分之一)
MICROS 微秒(毫秒的1000分之一)
MILLIS 毫秒
SECONDS
MINUTES 分钟
HOURS 小时
HALF_DAYS 半天
DAYS
WEEKS
MONTHS
YEARS
DECADES 十年
CENTURIES 世纪(百年)
MILLENNIA 千年
ERAS 纪元(1000_000_000L年)

枚举提供一个betwwen方法,接收两个参数,都是Temporal类型。
Temporal是LocalDateLocalTimeLocalDateTime的声明接口,因此可以直接传递我们常用的时间类。

示例

LocalDateTime time1 = LocalDateTime.of(2019, 11, 1, 0, 0);
LocalDateTime time2 = LocalDateTime.of(2019, 12, 2, 0, 0);

System.out.println("===输出秒===");
System.out.println(ChronoUnit.SECONDS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出小时===");
System.out.println(ChronoUnit.HOURS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出半天===");
System.out.println(ChronoUnit.HALF_DAYS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出天===");
System.out.println(ChronoUnit.DAYS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出周===");
System.out.println(ChronoUnit.WEEKS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出月===");
System.out.println(ChronoUnit.MONTHS.between(time1, time2));
System.out.println("===========");

System.out.println("===输出年===");
System.out.println(ChronoUnit.YEARS.between(time1, time2));
System.out.println("===========");

输出结果

===输出秒===
2678400
===========
===输出小时===
744
===========
===输出半天===
62
===========
===输出天===
31
===========
===输出周===
4
===========
===输出月===
1
===========
===输出年===
0
===========

java8 time计算时间差

标签:local   lis   temp   示例   ===   second   hal   day   代码   

原文地址:https://www.cnblogs.com/fengzhentian/p/12054853.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!