Friday, January 16, 2026
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

1 COMMENT

Most Popular

Dominic
32474 POSTS0 COMMENTS
Milvus
117 POSTS0 COMMENTS
Nango Kala
6846 POSTS0 COMMENTS
Nicole Veronica
11977 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12062 POSTS0 COMMENTS
Shaida Kate Naidoo
6985 POSTS0 COMMENTS
Ted Musemwa
7219 POSTS0 COMMENTS
Thapelo Manthata
6933 POSTS0 COMMENTS
Umr Jansen
6911 POSTS0 COMMENTS