📌  相关文章
📜  Java中的 ChronoPeriod plus() 方法及示例

📅  最后修改于: 2022-05-13 01:54:38.920000             🧑  作者: Mango

Java中的 ChronoPeriod plus() 方法及示例

Java中ChronoPeriod 接口plus()方法用于将给定数量的周期添加到指定周期。此函数在 YEAR、MONTH 和 DAY 分别运行。

注意:不执行标准化。 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-