如何在 Java 9 中使用 JShell 实现 java.time.LocalDate?


JShell 是一种REPL(读-求值-打印-循环)交互工具,在 Java 9 中引入,可以接收输入,对其进行评估并将输出返回给用户。

java.util.LocalDate 类提供了许多方法来检索日期信息:天/月/年和相关属性的日期元数据:例如是否为闰年等分类相关信息。LocalDate 类是不可变的,我们可以使用提供的方法来添加减去天数、月份和年份。这些操作中的每一个都会返回一个新的LocalDate 实例。

在下面的两个代码片段中,我们可以使用 LocalDate 类打印不同的操作。

片段 1

jshell> import java.time.*;

jshell> LocalDate today = LocalDate.now()
today ==> 2020-04-22

jshell> today.getYear()
$3 ==> 2020

jshell> today.getDayOfWeek()
$4 ==> WEDNESDAY

jshell> today.getDayOfMonth()
$5 ==> 22

jshell> today.getDayOfYear()
$6 ==> 113

jshell> today.getMonth()
$7 ==> APRIL

jshell> today.getMonthValue()
$8 ==> 4

jshell> today.isLeapYear()
$9 ==> true

jshell> today.lengthOfYear()
$10 ==> 366

jshell> today.lengthOfMonth()
$11 ==> 30

片段 2

jshell> today.plusDays(50)
$12 ==> 2020-06-11

jshell> today.plusMonths(50)
$13 ==> 2024-06-22

jshell> today.plusYears(50)
$14 ==> 2070-04-22

jshell> today.minusYears(50)
$15 ==> 1970-04-22

jshell> LocalDate yesterYear = today.minusYears(50)
yesterYear ==> 1970-04-22

jshell> today
today ==> 2020-04-22

更新时间:2020-04-22

527 次浏览

开启您的 职业生涯

完成课程,获得认证

开始
广告