1.LocalDateTime类
该类结合了和类LocalDateTime的功能:它存储日期和时间。它的对象也是不可变的,它的方法类似于和类的方法。LocalDateLocalTimeLocalDateLocalTime
获取当前日期和时间
一切都如您所料:我们使用now()方法。例子:
| 代码 | 控制台输出 |
|---|---|
|
|
在屏幕上显示时,日期和时间以字母 分隔T。
获取特定日期和时间
不出所料,一切都类似于LocalDate和LocalTime类——我们使用of()方法:
... = LocalDateTime.of(year, month, day, hours, minutes, seconds);
首先,有一些参数以与LocalDate类中相同的格式指定日期。然后有一些参数以与类中相同的格式指定时间LocalTime。下面列出了该方法的所有变体of():
| 方法 |
|---|
|
|
|
|
|
|
|
可以直接设置日期,也可以通过LocalDateandLocalTime对象间接设置:
| 代码 |
|---|
|
| 控制台输出 |
|
该类LocalDateTime具有获取日期和/或时间元素的方法。LocalDate它们完全反映了和类的方法LocalTime。我们不会在这里重复它们。
2.Instant类
Java 的创造者也没有忘记老派的方式。
Date Time API 包括一个 Instant 类,用于处理用于计算机中发生的进程的时间。它处理的不是小时、分钟和秒,而是秒、毫秒和纳秒。
这个类有两个字段代表:
- 自 1970 年 1 月 1 日以来经过的秒数
- 几纳秒
该课程是为开发人员制作的吗?是的。这就是它以 Unix 时间计算时间的原因,该时间从 1970 年初开始。
甚至可以说Instant类是类的简化版Date,只保留程序员需要的东西。
您可以使用Instant与获取对象完全相同的方式获取LocalTime对象:
Instant timestamp = Instant.now();
其中timestamp是一个Instant变量,是对类的静态方法的调用。Instant.now()now()Instant
例子:
| 代码 | 控制台输出 |
|---|---|
|
|
of()您还可以通过传递自 1970 年 1 月 1 日以来经过的时间,使用该方法的变体创建一个新对象:
|
你需要传递毫秒数 |
|
你需要传递秒数 |
|
你需要传递秒和纳秒 |
Instant对象可用的方法
Instant 类有两个返回其字段值的方法:
|
自 1970 年 1 月 1 日以来经过的秒数 |
|
纳秒。 |
|
自 1970 年 1 月 1 日以来经过的毫秒数 |
还有一些方法可以Instant根据现有对象创建新对象:
|
将秒数添加到当前时间 |
|
添加毫秒 |
|
添加纳秒 |
|
减秒 |
|
减去毫秒 |
|
减去纳秒 |
例子:
| 代码 | 控制台输出 |
|---|---|
|
|
GO TO FULL VERSION