Java ZonedDateTime plus()方法及示例
在ZonedDateTime类中,有两种类型的plus()方法,取决于传递给它的参数。
plus(long amountToAdd, TemporalUnit unit)
ZonedDateTime 类的 plus() 方法用于返回该日期时间的副本,并添加指定的单位数量。如果由于单位不被支持或其他原因而无法添加该数量,则会抛出一个异常。
语法
public ZonedDateTime plus(long amountToAdd,
TemporalUnit unit)
参数: 该方法接受两个参数。
- amountToAdd: 是要添加到结果中的单位数量,可能是负数。
- unit: 是要添加的金额的单位。
返回值: 该方法返回基于该日期时间的 ZonedDateTime ,并添加指定的数量。
异常: 该方法会抛出以下异常。
- DateTimeException :如果不能进行添加。
- UnsupportedTemporalTypeException : 如果单位不被支持。
- ArithmeticException :如果发生数字溢出。
下面的程序说明了plus()方法。
程序1 :
// Java program to demonstrate
// ZonedDateTime.plus() method
import java.time.*;
import java.time.temporal.ChronoUnit;
public class GFG {
public static void main(String[] args)
{
// create a ZonedDateTime object
ZonedDateTime zonedlt
= ZonedDateTime
.parse(
"2018-12-06T19:21:12.123+05:30[Asia/Calcutta]");
// add 30 Months to ZonedDateTime
ZonedDateTime value
= zonedlt.plus(30, ChronoUnit.MONTHS);
// print result
System.out.println("ZonedDateTime after"
+ " adding Months: \n"
+ value);
}
}
输出。
ZonedDateTime after adding Months:
2021-06-06T19:21:12.123+05:30[Asia/Calcutta]
plus(TemporalAmount amountToAdd)
ZonedDateTime 类的 plus() 方法用于返回该日期时间的副本,并将指定的金额添加到日期时间中。该金额通常是Period或Duration,但也可以是实现TemporalAmount接口的任何其他类型。
语法
public ZonedDateTime plus(TemporalAmount amountToAdd)
参数: 该方法接受一个单参数 amountToAdd ,它是要增加的金额,它不应该是空的。
返回值: 该方法返回基于该日期时间的 ZonedDateTime ,并进行添加。
异常: 该方法会抛出以下异常。
- DateTimeException :如果不能做加法。
- ArithmeticException :如果发生数字溢出。
下面的程序说明了plus()方法。
程序1 :
// Java program to demonstrate
// ZonedDateTime.plus() method
import java.time.*;
public class GFG {
public static void main(String[] args)
{
// create a ZonedDateTime object
ZonedDateTime zonedlt
= ZonedDateTime
.parse(
"2018-12-06T19:21:12.123+05:30[Asia/Calcutta]");
// add 100 Days to ZonedDateTime
ZonedDateTime value
= zonedlt.plus(Period.ofDays(100));
// print result
System.out.println("ZonedDateTime after"
+ " adding Days: \n"
+ value);
}
}
输出。
ZonedDateTime after adding Days:
2019-03-16T19:21:12.123+05:30[Asia/Calcutta]
参考资料
- https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#plus(java.time.temporal.TemporalAmount)
- https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#plus(long, java.time.temporal.TemporalUnit)