Java Calculate Number of Months Between two ZonedDateTime

Tags: Java ZonedDateTime ChronoUnit Java 8

In this Java core tutorial, we learn how to write Java program to calculate the number of months between two ZonedDateTime objects using the java.time.temporal.ChronoUnit class in Java programming language.

How to get number of months between two ZonedDateTime in Java

In Java, we can use the ChronoUnit.MONTHS.between() method to calculate the number of months between two ZonedDateTime values as the following example Java code.

MonthsBetweenZonedDateTimeExample.java

import java.time.ZonedDateTime;
import java.time.temporal.ChronoUnit;

public class MonthsBetweenZonedDateTimeExample {
    public static void main(String... args) {
        ZonedDateTime startZonedDateTime = ZonedDateTime.parse("2021-08-15T08:15:30+10:00[Australia/Sydney]");
        ZonedDateTime endZonedDateTime = ZonedDateTime.parse("2022-08-15T08:15:30+10:00[Australia/Sydney]");

        // Calculate Number of Months Between two ZonedDateTime
        long numberOfMonths = ChronoUnit.MONTHS.between(startZonedDateTime, endZonedDateTime);

        System.out.println(String.format("Number of months between %s and %s is %d",
                startZonedDateTime,
                endZonedDateTime,
                numberOfMonths));

    }
}
The output as below.
Number of months between 2021-08-15T08:15:30+10:00[Australia/Sydney] and 2022-08-15T08:15:30+10:00[Australia/Sydney] is 12

Happy Coding 😊

Java Calculate Number of Decades Between two ZonedDateTime

Java Calculate Number of Years Between two ZonedDateTime

Java Calculate Number of Weeks Between two ZonedDateTime

Java Calculate Number of Days Between two ZonedDateTime

Java Calculate Number of Hours Between two ZonedDateTime

Java Calculate Number of Minutes Between two ZonedDateTime

Java Calculate Number of Seconds Between two ZonedDateTime

Java Calculate Number of Milliseconds Between two ZonedDateTime

Java Calculate Number of Nanoseconds Between two ZonedDateTime