當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java ZonedDateTime plusHours()用法及代碼示例


plusHours()ZonedDateTime類的方法,用於在此ZonedDateTime中添加小時數,並在添加後返回ZonedDateTime的副本。此操作在即時時間軸上進行,因此添加一小時始終是一小時後的持續時間。添加一小時可能會導致本地日期時間更改的時間不是一小時。
例如,考慮一個時區,例如“歐洲/巴黎”,秋季DST切換意味著本地時間02:00到02:59發生兩次,從夏令時的+02:00更改為+01:00在冬季。

  • 將一小時添加到01:30 + 02:00將導致02:30 + 02:00(均為夏令時)
  • 將一小時添加到02:30 + 02:00將導致02:30 + 01:00(從夏季到冬季)
  • 將一小時添加到02:30 + 01:00將導致03:30 + 01:00(均為冬季)
  • 將三個小時添加到01:30 + 02:00,將導致03:30 + 01:00(從夏季到冬季)

此實例是不可變的,不受此方法調用的影響。

用法:


public ZonedDateTime plusHours(long hours)

參數:此方法接受單個參數hours,該參數表示要添加的小時數,可以為負數。

返回值:此方法基於此日期時間返回添加了小時數的ZonedDateTime,而不是null。

異常:如果結果超出支持的日期範圍,則此方法將引發DateTimeException。

以下示例程序旨在說明plusHours()方法:
示例1:

// Java program to demonstrate 
// ZonedDateTime.plusHours() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zoneddatetime 
            = ZonedDateTime.parse( 
                "2018-12-06T19:21:12.123+05:30[Asia/Calcutta]"); 
  
        // print instance 
        System.out.println("ZonedDateTime before"
                           + " adding hours: "
                           + zoneddatetime); 
  
        // add 3 hours 
        ZonedDateTime returnvalue 
            = zoneddatetime.plusHours(3); 
  
        // print result 
        System.out.println("ZonedDateTime after "
                           + " adding hours: "
                           + returnvalue); 
    } 
}
輸出:

ZonedDateTime before adding hours: 2018-12-06T19:21:12.123+05:30[Asia/Calcutta]
ZonedDateTime after adding hours: 2018-12-06T22:21:12.123+05:30[Asia/Calcutta]

示例2:

// Java program to demonstrate 
// ZonedDateTime.plusHours() method 
  
import java.time.*; 
  
public class GFG { 
    public static void main(String[] args) 
    { 
  
        // create a ZonedDateTime object 
        ZonedDateTime zoneddatetime 
            = ZonedDateTime.parse( 
                "2018-10-25T23:12:31.123+02:00[Europe/Paris]"); 
  
        // print instance 
        System.out.println("ZonedDateTime before"
                           + " adding hours: "
                           + zoneddatetime); 
  
        // add 20 hours 
        ZonedDateTime returnvalue 
            = zoneddatetime.plusHours(20); 
  
        // print result 
        System.out.println("ZonedDateTime after "
                           + " adding hours: "
                           + returnvalue); 
    } 
}
輸出:

ZonedDateTime before adding hours: 2018-10-25T23:12:31.123+02:00[Europe/Paris]
ZonedDateTime after adding hours: 2018-10-26T19:12:31.123+02:00[Europe/Paris]

參考: https://docs.oracle.com/javase/10/docs/api/java/time/ZonedDateTime.html#plusHours(long)



相關用法


注:本文由純淨天空篩選整理自AmanSingh2210大神的英文原創作品 ZonedDateTime plusHours() method in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。