diff --git a/s-day01/src/com/inmind/jdk8_date05/DurationDemo14.java b/s-day01/src/com/inmind/jdk8_date05/DurationDemo14.java new file mode 100644 index 0000000..fcbd7a4 --- /dev/null +++ b/s-day01/src/com/inmind/jdk8_date05/DurationDemo14.java @@ -0,0 +1,26 @@ +package com.inmind.jdk8_date05; + +import java.time.Duration; +import java.time.LocalDateTime; + +/* +Duration类。它是用来表示两个时间对象的时间间隔 +可以用于计算两个时间对象相差的天数、小时数、分数、秒数、纳秒数;支持LocalTime、LocalDateTime、Instant等时间 +*/ +public class DurationDemo14 { + public static void main(String[] args) { + //1.创建两个时间对象(带时分秒) + LocalDateTime start = LocalDateTime.of(2025, 3, 16, 15, 43, 44); + LocalDateTime end = LocalDateTime.of(2026, 7, 30, 11, 50, 44); + + //2.获取时间间隔对象 + Duration duration = Duration.between(start, end); + //3.获取时间间隔的信息 + System.out.println(duration.toDays()); + System.out.println(duration.toHours()); + System.out.println(duration.toMinutes()); + System.out.println(duration.toSeconds()); + System.out.println(duration.toMillis()); + System.out.println(duration.toNanos()); + } +} diff --git a/s-day01/src/com/inmind/jdk8_date05/InstantDemo12.java b/s-day01/src/com/inmind/jdk8_date05/InstantDemo12.java index 86eed9c..e46a6b5 100644 --- a/s-day01/src/com/inmind/jdk8_date05/InstantDemo12.java +++ b/s-day01/src/com/inmind/jdk8_date05/InstantDemo12.java @@ -1,5 +1,6 @@ package com.inmind.jdk8_date05; +import java.time.Duration; import java.time.Instant; /** @@ -29,9 +30,14 @@ public class InstantDemo12 { // Instant对象的作用:做代码的性能分析,或者记录用户的操作时间点 Instant start = Instant.now(); + for (int i = 0; i < 500; i++) { + System.out.println("---------"); + } //代码的执行(50行代码的功能) Instant end = Instant.now(); - //todo 之后我们会用间隔来计算时间差!!! + //我们会用间隔来计算时间差!!! + Duration duration = Duration.between(start, end); + System.out.println(duration.toNanos()); //传统的Date类,只能精确到毫秒,并且是可变对象,而Instant可以精确到纳秒,并且不可改变对象,推荐使用Instant,但一般LocalDateTime也够用了 } }