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-