Java LocalDateTime

时间:2020-01-09 10:35:56  来源:igfitidea点击:

Java 8日期时间API(java.time.LocalDateTime)中的LocalDateTime类代表了本地日期和时间,没有任何时区信息。我们可以将Java 8日期时间API的LocalDate和LocalTime类组合在一起查看LocalDateTime。

LocalDateTime是不可变的,因此所有在LocalDateTime上执行计算的方法都返回一个新的LocalDateTime实例。

创建一个LocalDateTime

我们可以通过其静态工厂方法之一创建" LocalDateTime"对象。这是一个示例,显示了如何通过now()方法创建LocalDateTime对象:

LocalDateTime localDateTime = LocalDateTime.now();

创建LocalDateTime对象的另一种方法是根据特定的年,月,日等来创建它。这是一个示例:

LocalDateTime localDateTime2 =
    LocalDateTime.of(2014, 11, 26, 13, 55, 36, 123);

of()方法的参数是年,月,日(月),小时,分钟,秒和纳秒。

访问LocalDateTime的时间

我们可以使用以下一些方法访问" LocalDateTime"的日期和时间字段:

  • getYear()
  • getMonth()
  • getDayOfMonth()
  • getDayOfWeek()
  • getDayOfYear()
  • getHour()
  • getMinute()
  • getSecond()
  • getNano()

这些方法中的一些返回" int",而一些返回" enum"。通过返回"枚举"的方法,我们可以通过调用"枚举"的" getValue()"来获得"枚举"的" int"表示。

日期时间计算

我们可以使用以下一些方法对LocalDateTime对象执行各种日期时间计算:

  • plusYears()
  • plusMonths()
  • plusDays()
  • plusHours()
  • plusMinutes()
  • plusSeconds()
  • plusNanos()
  • minusYears()
  • minusMonths()
  • minusDays()
  • minusHours()
  • minusMinutes()
  • minusSeconds()
  • minusNanos()

以下是一些示例来说明这些计算方法的工作方式:

LocalDateTime localDateTime  = LocalDateTime.now();

LocalDateTime localDateTime1 = localDateTime.plusYears(3);
LocalDateTime localDateTime2 = localDateTime.minusYears(3);

第一行创建一个LocalDateTime实例,表示现在的时刻。第二行创建一个LocalDateTime对象,该对象表示3年后的日期和时间。第三行创建一个" LocalDateTime"对象,该对象表示3年前的日期和时间。