Java的日期与时间(十二)java.time.LocalDate

来源:互联网 发布:sql查询字段重复记录 编辑:程序博客网 时间:2024/06/04 18:29

Java的日期与时间

原文链接
作者:Jakob Jenkov
译者:阿为
目录:http://blog.csdn.net/tjgykhulj/article/details/68952451
所有译者备注将以此形式出现,删除线表示有争议或不明确的地方


LocalDate类是Java 8中日期时间功能里表示一个本地日期的类,它的日期是无时区属性的。可以用来表示生日、节假日期等等。这个类用于表示一个确切的日期,而不是这个日期所在的时间(如java.util.Date中的2000.01.01表示的实际是这一天的00:00这个瞬间)。
LocalDate类位于java.time包下,人名叫java.time.LocalDate,创建出来的实例也是不可变对象,所以涉及它的计算方法将返回一个新的LocalDate。

创建一个LocalDate实例
我们有多种方式可以创建出LocalDate实例。第一种方法是使用now()方法获得值为今天当日的LocalDate对象:
LocalDate localDate = LocalDate.now();
另一种方法是使用年月日信息构造出LocalDate对象:
LocalDate localDate2 = LocalDate.of(2015, 12, 31);
LocalDate的of()方法创建出一个指定年月日的日期,并且没有时区信息。

访问日期信息
可以用如下方法访问LocalDate中的日期信息:

int   year       = localDate.getYear();Month month      = localDate.getMonth();int   dayOfMonth = localDate.getDayOfMonth();int   dayOfYear  = localDate.getDayOfYear();DayOfWeek dayOfWeek = localDate.getDayOfWeek();

可以注意到getMonth()与getDayOfWeek()方法返回了一个枚举类型代替一个int。你可以通过枚举类型中的getValue()来获得信息。

LocalDate计算
你可以进行一堆简单的日期计算,只要使用如下的方法:

plusDays()plusWeeks()plusMonths()plusYears()minusDays()minusWeeks()minusMonths()minusYears()

以下举几个使用的例子来帮助理解使用:

LocalDate d  = LocalDate.of(2015, 12, 31);LocalDate d1 = localDate.plusYears(3);LocalDate d2 = localDate.minusYears(3);

第一行创建出一个新的LocalDate对象d,表示2015.12.31。
第二行创建了值等于d日期3年后的LocalDate对象,第三行也是一样,只是值改为d日期的三年前。


下一章:java.time.LocalTime

0 0
原创粉丝点击