Java中的 YearMonth minus(long,unit) 方法及示例
YearMonth类的减法(long, unit)方法用于从这个Year-month 对象中减去指定数量的TemporalUnit 后返回这个Year-month 的副本。如果不能从Year 中减去指定的单位,则抛出异常-月。此实例是不可变的,不受此方法调用的影响。
句法:
public YearMonth minus(long amountToSubtract, TemporalUnit unit)
参数:此方法接受两个参数:
- amountToSubtract :此参数表示要从结果中减去的单位数量。
- unit :此参数表示要减去的金额的单位。
返回值:此方法返回基于此年月减去指定金额的年月。
异常:此方法抛出以下异常:
- DateTimeException –如果无法进行减法,则会引发此异常。
- UnsupportedTemporalTypeException –如果不支持该单元,则会引发此异常。
- ArithmeticException –如果发生数字溢出,则会引发此异常。
下面的程序说明了减法(long, unit) 方法:
方案一:
// Java program to demonstrate
// YearMonth.minus(long, unit) method
import java.time.*;
import java.time.temporal.*;
public class GFG {
public static void main(String[] args)
{
// Create a YearMonth object
YearMonth thisYearMonth = YearMonth.of(2017, 8);
// print instance
System.out.println("YearMonth :"
+ thisYearMonth);
// apply minus(long, unit) method
// subtracting 20 Years
YearMonth value
= thisYearMonth.minus(20, ChronoUnit.YEARS);
// print result
System.out.println("After subtraction YearMonth: "
+ value);
}
}
输出:
YearMonth :2017-08
After subtraction YearMonth: 1997-08
方案二:
// Java program to demonstrate
// YearMonth.minus(long, unit) method
import java.time.*;
import java.time.temporal.*;
public class GFG {
public static void main(String[] args)
{
// Create a YearMonth object
YearMonth thisYearMonth = YearMonth.of(2019, 12);
// print instance
System.out.println("YearMonth :"
+ thisYearMonth);
// apply minus(long, unit) method
// subtracting 30 Months
YearMonth value
= thisYearMonth.minus(30, ChronoUnit.MONTHS);
// print result
System.out.println("After subtraction YearMonth: "
+ value);
}
}
输出:
YearMonth :2019-12
After subtraction YearMonth: 2017-06
参考:
https://docs.oracle.com/javase/10/docs/api/java /time/YearMonth.html#minus(long, Java Java)