java8中时间API怎么用

发布时间:2021-11-24 17:42:04 作者:小新
来源:亿速云 阅读:137

这篇文章给大家分享的是有关java8中时间API怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

 

为什么需要在Java8中引入新的日期和时间库?

  1. 在java1.0中,对时间和日期的支持只能依赖 java.util.date 类,但这个类无法表示日期,只能以毫秒的精度表示时间,易用性也较低。
Date date = new Date(114,2,18);
//打印结果
Tue Mar 18 00:00:00 CST 2014
 
  1. 在java1.1中,同时存在Date和Calendar类,增加了程序员的选择困惑,并且月份是从0开始
  2. DateFormate类只支持Date类
 

LocalDate:提供简单的日期,不包含时间信息

//创建一个不可变的日期对象
LocalDate date = LocalDate.now(); //返回当前日期
LocalDate date = LocalDate.of(2014,3,18); //返回一个指定日期
LocalDate date = LocalDate.parse("2014-03-18"); //解析字符串,生成一个LocalDate对象
...

//获取日期时间的方法
int year = date.getYear(); //获取年
getDayOfMonth(); //获取月中的日
getMonth(); //获取月份
getDayOfWeek(); //获取星期
lengthOfMonth(); //获取月份的天数
isLeapYear(); //是否是周年
...

//操作LocalDate方法(一部分)
withYear(int year); //设置年
withDayOfMonth(int day); //设置日
with(ChronoFiled.MONTH_OF_YEAR,int month); //设置月份
plusWeek(int week); //添加周数
minusYears(int year); //减去year年
plus(int month,ChronoUnit.MONTHS); //修改月份
...

//比较的方法
isEqual(); //是否相等
isBefore(); //是否先于
isAfter(); //是否后于
   

LocalTime:提供简单的时间,不包含日期信息

//创建一个时间对象
LocalTime time = LocalTime.now(); //当前时间
LocalTime time = LocalTime.of(13,23,46); //自定义时间
LocalTime time = LocalTime.parse("13:23:46"); //解析时间
...

//获取时间的方法
getHour(); //获取小时
getMinute(); //分
getSecond(); //秒
...

//操作时间的方法
plusHour(); //小时
plusMinute(); //操作分钟
plusSecond(); //秒
...
//比较的方法
isEqual(); //是否相等
isBefore(); //是否先于
isAfter(); //是否后于
``
   

LocalDateTime:整合了LocalDate和LocalTime

//创建日期时间对象
LocalDateTime dateTime = LocalDateTime.now(); //当前啊日期时间
LocalDateTime dateTime = LocalDateTime.of(LocalDate.now,LocalTime.now); //指定日期时间
LocalDateTime dateTime = LocalDateTime.parse("2018-08-08 08:08:08"); //解析时间

//获取日期时间的方法
getYear(); //获取年
getDayOfMonth(); //获取月中的日
getMonth(); //获取月份
getDayOfWeek(); //获取星期
getHour(); //获取小时
getMinute(); //分
getSecond(); //秒
...

//操作日期时间的方法
withYear(int year); //设置年
withDayOfMonth(int day); //设置日
with(ChronoFiled.MONTH_OF_YEAR,int month); //设置月份
plusHour(); //小时
plusMinute(); //操作分钟
plusSecond(); //秒
...
//比较的方法
isEqual(); //是否相等
isBefore(); //是否先于
isAfter(); //是否后于
``
   

Duration:用于计算两个LocalTime或两个LocalDateTime之间的时间差; Peroid用于计算两个LocalDate之间的差值

Duration duration = Duration.between(LocalTime.of(12,12,12),LocalTime.now());
long second = duration.getSeconds(); //时间差
Peroid peroid = Peroid.between(LocalDate.now(),LocalDate.now());
int month = peroid.getMonth(); //getDay(),getYear() 时间差值
   

时间戳:Instance

Instant now = Instant.now();
   

感谢各位的阅读!关于“java8中时间API怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. Java8中Stream API的小练习
  2. Java8中Stream API的应用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

java api

上一篇:怎么深入理解OSPF协议

下一篇:成功部署SD-WAN的六个必要条件分别是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》