文档章节

Java 8系列(一): 日期/时间- JSR310( Date and Time API)

Oxidyc
 Oxidyc
发布于 2017/08/23 15:36
字数 427
阅读 22
收藏 0

全新API的众多好处之一就是明确了日期时间概念,例如:瞬时(instant)、长短(duration)、日期、时间、时区和周期。同时继承了Joda库按人类语言和计算机各自解析的时间处理方式。不同老版本,新API基于ISO标准日历系统,java.time包下的所有类都是不可变类且线程安全的。新版API中java.time包里的一些关键类:

  • Instant:瞬时实例
  • LocalDate:本地日期,不包含具体时间 例如:2014-01-14 可以用来记录生日、纪念日、加盟日等。
  • LocalTime:本地时间,不包含日期。
  • LocalDateTime:组合了日期和时间,但不包含时差和时区信息。
  • ZonedDateTime:最完整的日期时间,包含时区和相对UTC或格林威治的时差。

java.time.LocalDate

只提供日期不提供时间信息

LocalDate localDate = LocalDate.now();

//
localDate.lengthOfMonth();
localDate.getMonth().name();
//2天之后
localDate.plus(2,ChronoUnit.DAYS);
//2天之前
localDate.minus(2,ChronoUnit.DAYS);

java.time.LocalTime

只提供时间而不提供日期信息

LocalTime localTime=LocalTime.now();

//小时
localTime.getHour();
//2个小时之后
localTime.plus(2,ChronoUnit.HOURS);
//6分钟之后
localTime.plusMinutes(6);
//2个小时之前
localTime.plus(2,ChronoUnit.HOURS);

java.time.LocalDateTime

提供时间和日期的信息

LocalDateTime localDateTime = LocalDateTime.now();

//2天之后
localDateTime.plus(2,ChronoUnit.DAYS);
//2天之前
localDateTime.minus(2,ChronoUnit.DAYS);

java.time.Year

提供年的信息

Year year = Year.now();

java.time.Duration

用来计算两个给定的日期之间包含多少秒,多少毫秒

java.time.Period

用户计算两个给定的日期之间包含多少天,多少月,或者多少年

LocalDate localDate = LocalDate.now();
Period period = Period.between(localDate,localDate.plus(2,ChronoUnit.DAYS));
period.getDays();

 

参考文章:

  • http://blog.csdn.net/sf_cyl/article/details/51987088
  • http://blog.csdn.net/bangrenzhuce/article/details/52270232
  • http://www.cnblogs.com/exmyth/p/6425878.html
  • http://www.blogjava.net/4cai/archive/2014/04/29/413041.html

 

© 著作权归作者所有

Oxidyc
粉丝 0
博文 37
码字总数 9001
作品 0
长春
程序员
私信 提问
Java 8新特性探究(七)深入解析日期和时间-JSR310

博客一个月没更新了,这次给大家讲下java8时间与日期API。 众所周知,日期是商业逻辑计算一个关键的部分,任何企业应用程序都需要处理时间问题。应用程序需要知道当前的时间点和下一个时间点...

OSC闲人
2014/01/17
16.3K
21
java8中的时间处理0 - api介绍

Java 8 Date Time API是我们java开发一直寻找的时间处理工具。java从一开始设计的时间类就让人头疼,好在现在终于有了java8。 为什么我们需要这套API 只要是有这么几个理由: Java的日期和时...

davelet
2018/02/22
0
0
Java 8 Time Api 使用指南-珍藏限量版

1.概述 Java 8为Date和Time引入了新的API,以解决旧和的缺点。作为本文的一部分,让我们从现有Date和Calendar API存在的一些问题入手,来探讨新的Java 8 Date和Time API如何解决这些问题。我...

码农小胖哥
08/28
74
0
java和mysql之间的时间日期类型传递

mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59:59 timestamp 4bytes xxxx-xx-xx xx:xx:xx 1970-01-01 00:00:01到......

为了美好的明天
2017/10/31
59
0
Java 8新特性探究(7):深入解析日期和时间-JSR310

众所周知,日期是商业逻辑计算一个关键的部分,任何企业应用程序都需要处理时间问题。应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径。但java之前的...

独孤环宇
2017/11/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
9
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部