当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java ZonedDateTime minus()用法及代码示例


在ZonedDateTime类中,根据传递给它的参数,有两种类型的minus()方法。

minus(long amountTosubtract, TemporalUnit unit)

ZonedDateTime类的minus()方法用于返回此日期时间的副本,其中减去指定的单位数量。如果由于支持的单位或其他原因而无法减去该数量,则抛出异常。

用法:


public ZonedDateTime minus(long amountToSubtract,
                           TemporalUnit unit)

参数:此方法接受两个参数:

  • amountToSubtract:这是要减去结果的单位量,可能为负
  • unit:这是要减去的量的单位。

返回值:此方法基于此日期时间返回ZonedDateTime,减去指定的数量。

异常:此方法引发以下异常:

  • DateTimeException:如果无法进行减法,
  • UnsupportedTemporalTypeException:如果不支持本机。
  • ArithmeticException:如果发生数字溢出。

以下示例程序旨在说明minus()方法:

示例1:

// Java program to demonstrate 
// ZonedDateTime.minus() method 
  
import java.time.*; 
import java.time.temporal.ChronoUnit; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zonedlt 
            = ZonedDateTime 
                  .parse( 
                      "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]"); 
  
        // subtract 30 Months to ZonedDateTime 
        ZonedDateTime value 
            = zonedlt.minus(30, ChronoUnit.MONTHS); 
  
        // print result 
        System.out.println("ZonedDateTime after"
                           + " subtracting Months:\n "
                           + value); 
    } 
}
输出:
ZonedDateTime after subtracting Months:
 2016-06-06T19:21:12.123+05:30[Asia/Calcutta]

minus(TemporalAmount amountTosubtract)

ZonedDateTime类的minus()方法用于返回此日期时间的副本,并将指定的数量减去日期时间。该数量通常为Period或Duration,但可以是实现TemporalAmount接口的任何其他类型。

用法:

public ZonedDateTime minus(TemporalAmount amountTosubtract)

参数:此方法接受一个参数parameterToSubtract,它是要减去的数量,它不能为null。

返回值:此方法基于此日期时间并减去后返回ZonedDateTime,而不是null


异常:此方法引发以下异常:

  • DateTimeException:如果不能进行减法
  • ArithmeticException:如果发生数字溢出

以下示例程序旨在说明minus()方法:

示例1:

// Java program to demonstrate 
// ZonedDateTime.minus() method 
  
import java.time.*; 
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zonedlt 
            = ZonedDateTime 
                  .parse( 
                      "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]"); 
  
        // subtract 10 Days to ZonedDateTime 
        ZonedDateTime value 
            = zonedlt.minus(Period.ofDays(10)); 
  
        // print result 
        System.out.println("ZonedDateTime after"
                           + " subtracting Days:\n "
                           + value); 
    } 
}
输出:
ZonedDateTime after subtracting Days:
 2018-11-26T19:21:12.123+05:30[Asia/Calcutta]

参考:



相关用法


注:本文由纯净天空筛选整理自AmanSingh2210大神的英文原创作品 ZonedDateTime minus() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。