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

矫情吗;* 2022-06-18 09:44 303阅读 0赞

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中的日期信息:

  1. int year = localDate.getYear();
  2. Month month = localDate.getMonth();
  3. int dayOfMonth = localDate.getDayOfMonth();
  4. int dayOfYear = localDate.getDayOfYear();
  5. DayOfWeek dayOfWeek = localDate.getDayOfWeek();

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

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

  1. plusDays()
  2. plusWeeks()
  3. plusMonths()
  4. plusYears()
  5. minusDays()
  6. minusWeeks()
  7. minusMonths()
  8. minusYears()

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

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

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


下一章:java.time.LocalTime

发表评论

表情:
评论列表 (有 0 条评论,303人围观)

还没有评论,来说两句吧...

相关阅读