Java Duration toHours()

In this guide, you will learn about the Duration toHours() method in Java programming and how to use it with an example.

1. Duration toHours() Method Overview


The Duration.toHours() method is used to obtain the number of whole hours represented by the Duration instance, disregarding any fractional hours.


public long toHours()


- None.

Key Points:

- The method returns the number of hours in the Duration, not counting any fractional part. Any excess precision information is disregarded.

- If the duration is negative, the method will return a negative value.

- This method can be particularly useful when converting a Duration to a human-readable format or when performing arithmetic operations that require whole numbers.

2. Duration toHours() Method Example

import java.time.Duration;

public class DurationToHoursExample {
    public static void main(String[] args) {
        Duration duration1 = Duration.ofMinutes(150); // 2 hours and 30 minutes
        Duration duration2 = Duration.ofMinutes(-45); // -45 minutes

        // Convert durations to hours
        long hours1 = duration1.toHours();
        long hours2 = duration2.toHours();

        // Print the hours
        System.out.println("Duration1 in hours: " + hours1);
        System.out.println("Duration2 in hours: " + hours2);


Duration1 in hours: 2
Duration2 in hours: -1


In the example, duration1 is created with a duration of 150 minutes, which equates to 2 hours and 30 minutes. 

When toHours() is called on this instance, it returns 2, disregarding the additional 30 minutes. 

Similarly, duration2 is created with a negative duration of -45 minutes. When toHours() is invoked on this duration, it rounds to -1 hour, since there's no complete hour in the negative 45 minutes, and any fractional part is disregarded.