Java Duration subtractFrom(Temporal)方法及示例
java.time包中Duration类的subtractFrom(Temporal)方法用于将该期限减去作为参数传递的指定时间对象。
语法。
public Temporal subtractFrom?(Temporal temporalObject)
参数。这个方法接受一个参数temporalObject,它是在这个期限内要调整的数量。它不应该是空的。
返回值。该方法返回一个与temporalObject调整的相同类型的对象。
异常情况。这个方法会抛出。
- DateTimeException : 如果无法进行减法。
- ArithmeticException:如果发生数字溢出。
下面的例子说明了Duration.subtractFrom()方法。
例子1:
// Java code to illustrate subtractFrom() method
import java.time.*;
public class GFG {
public static void main(String[] args)
{
// Duration 1 using parse() method
Duration duration1
= Duration.parse("P2DT3H4M");
// Get the time to be adjusted
LocalDateTime currentTime
= LocalDateTime.now();
System.out.println("Original time: "
+ currentTime);
// Adjust the time
// using subtractFrom() method
System.out.println(
duration1
.subtractFrom(currentTime));
}
}
输出:
Original time: 2018-11-26T06:48:30.256
2018-11-24T03:44:30.256
例2:
// Java code to illustrate subtractFrom() method
import java.time.*;
public class GFG {
public static void main(String[] args)
{
// Duration
Duration duration2
= Duration.ofDays(-5);
// Get the time to be adjusted
LocalDateTime currentTime
= LocalDateTime.now();
System.out.println("Original time: "
+ currentTime);
// Adjust the time
// using subtractFrom() method
System.out.println(
duration2
.subtractFrom(currentTime));
}
}
输出:
Original time: 2018-11-26T06:48:33.319
2018-12-01T06:48:33.319
参考资料: https://docs.oracle.com/javase/9/docs/api/java/time/Duration.html#subtractFrom-java.time.temporal.Temporal-