📌  相关文章
📜  Java中的 ChronoZonedDateTime minus(TemporalAmount) 方法及示例(1)

📅  最后修改于: 2023-12-03 15:01:51.962000             🧑  作者: Mango

Java中的 ChronoZonedDateTime minus(TemporalAmount) 方法及示例

ChronoZonedDateTime类是Java8新增的日期时间处理类,用于处理带有时区的日期时间。它是ZonedDateTime的抽象父类,提供了一系列处理该类时间的方法。其中,minus(TemporalAmount)方法可以在当前时间的基础上减去一段时间。

方法介绍
ChronoZonedDateTime<T> minus(TemporalAmount amountToSubtract)

该方法可以在当前时间的基础上减去指定的TemporalAmount,返回一个新的ChronoZonedDateTime对象。

参数说明
  • amountToSubtract: 需要减去的时间量,可以是DurationPeriod等。
示例
// 获取当前时间
ChronoZonedDateTime<LocalDate> now1 = ChronoZonedDateTime.now(ZoneId.systemDefault());
System.out.println("当前时间:" + now1);

// 减去1小时
Duration duration = Duration.ofHours(1);
ChronoZonedDateTime<LocalDate> now2 = now1.minus(duration);
System.out.println("减去1小时后的时间:" + now2);

// 减去8天
Period period = Period.ofDays(8);
ChronoZonedDateTime<LocalDate> now3 = now1.minus(period);
System.out.println("减去8天后的时间:" + now3);

输出结果为:

当前时间:2021-12-14T15:26:16.458+08:00[Asia/Shanghai]
减去1小时后的时间:2021-12-14T14:26:16.458+08:00[Asia/Shanghai]
减去8天后的时间:2021-12-06T15:26:16.458+08:00[Asia/Shanghai]

上面的示例中,我们获取当前时间并输出。然后使用DurationPeriod分别表示需要减去的时间量,并通过minus()方法减去指定的时间量。最后输出减去时间量后的时间。