Thursday, October 23, 2025
HomeLanguagesJavaZonedDateTime plusHours() method in Java with Examples

ZonedDateTime plusHours() method in Java with Examples

plusHours() method of a ZonedDateTime class used to add the number of hours in this ZonedDateTime and return a copy of ZonedDateTime after addition.This operates on the instant time-line, such that adding one hour will always be a duration of one hour later. Adding one hour may cause the local date-time to change by an amount other than one hour.
For example, consider a time-zone, such as ‘Europe/Paris’, where the Autumn DST cutover means that the local times 02:00 to 02:59 occur twice changing from offset +02:00 in summer to +01:00 in winter.

  • Adding one hour to 01:30+02:00 will result in 02:30+02:00 (both in summer time)
  • Adding one hour to 02:30+02:00 will result in 02:30+01:00 (moving from summer to winter time)
  • Adding one hour to 02:30+01:00 will result in 03:30+01:00 (both in winter time)
  • Adding three hours to 01:30+02:00 will result in 03:30+01:00 (moving from summer to winter time)

This instance is immutable and unaffected by this method call.

Syntax:

public ZonedDateTime plusHours(long hours)

Parameters: This method accepts a single parameter hours which represents the hours to add, It can be negative.

Return value: This method returns a ZonedDateTime based on this date-time with the hours added, not null.

Exception: This method throws DateTimeException if the result exceeds the supported date range.

Below programs illustrate the plusHours() method:
Program 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);
    }
}


Output:

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]

Program 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);
    }
}


Output:

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]

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

RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS