Java ChronoPeriod plus()方法及示例

来源:这里教程网 时间:2026-02-17 20:41:16 作者:

Java ChronoPeriod plus()方法及示例

Java中 ChronoPeriod接口plus() 方法用于将给定的周期量添加到指定的周期中。这个函数分别对年、月和日进行操作。

注意: 不进行归一化处理。12个月和1年是不同的。

语法

ChronoPeriod plus(TemporalAmount amountToAdd)

参数: 该函数接受一个单参数 amountToAdd ,它是要添加到周期的 金额 。它不能为空。

返回值 该函数返回一个基于给定周期的ChronoPeriod,并添加所要求的周期,该值不能为空。

异常情况

DateTimeException : 如果指定的数量有一个非ISO的时间顺序或包含一个无效的单位,则返回这个异常。ArithmeticException : 如果发生数字溢出,将捕获此异常。

下面的程序说明了上述方法。

程序1 :

// Java code to show the function plus()// to subtract the two given periods  import java.time.*;import java.time.chrono.*;import java.time.temporal.ChronoUnit;  public class ChronoPeriodDemo {      // Function to subtract two given periods    static void addChronoPeriod(ChronoPeriod p1, ChronoPeriod p2)    {          System.out.println(p1.plus(p2));    }      // Driver Code    public static void main(String[] args)    {        // Defining first period        int year = 4;        int months = 11;        int days = 10;        ChronoPeriod p1 = Period.of(year, months, days);          // Defining second period        int year1 = 2;        int months1 = 7;        int days1 = 8;        ChronoPeriod p2 = Period.of(year1, months1, days1);          addChronoPeriod(p1, p2);    }}

输出:

P6Y18M18D

程序2 :ChronoPeriod可以是负数。

// Java code to show the function plus()// to subtract the two given periods  import java.time.*;import java.time.chrono.*;import java.time.temporal.ChronoUnit;  public class ChronoPeriodDemo {      // Function to add two given periods    static void addChronoPeriod(ChronoPeriod p1, ChronoPeriod p2)    {          System.out.println(p1.plus(p2));    }      // Driver Code    public static void main(String[] args)    {        // Defining second period        int year1 = 2;        int months1 = 7;        int days1 = 8;        ChronoPeriod p1 = Period.of(year1, months1, days1);          // Defining first period        int year = 4;        int months = 11;        int days = 10;        ChronoPeriod p2 = Period.of(year, months, days);          addChronoPeriod(p1, p2);    }}

输出:

P6Y18M18D

参考资料 : https://docs.oracle.com/javase/9/docs/api/java/time/chrono/ChronoPeriod.html#plus-java.time.temporal.TemporalAmount-

相关推荐