# Calculate days between two ZonedDateTime objects in Java

By Atta Ur Rehman Shah (https://attacomsian.com/about). Published Nov 16, 2022. Topics: Java.
Canonical URL: https://attacomsian.com/blog/java-days-between-two-zoneddatetime-objects

> Learn how to use the ChronoUnit.DAYS enum to calculate days between two ZonedDateTime objects in Java.

You can use the `ChronoUnit.DAYS` enum to calculate the days between two `ZonedDateTime` instances in Java. It provides the `between()` method to calculate the amount of time between two temporal objects:

```java
// Create date instances
ZonedDateTime startZonedDateTime = ZonedDateTime.parse("2022-03-23T10:40:30+01:00[Europe/Paris]");
ZonedDateTime endZonedDateTime = ZonedDateTime.parse("2022-11-12T10:40:33+05:00[Asia/Karachi]");

// Calculate the difference
long days = ChronoUnit.DAYS.between(startZonedDateTime, endZonedDateTime);

// Print days
System.out.println("Days between " + startZonedDateTime + " and " + endZonedDateTime + ": " + days);
// Days between 2022-03-23T10:40:30+01:00[Europe/Paris] 
// and 2022-11-12T10:40:33+05:00[Asia/Karachi]: 233
```

The [`ChronoUnit`](https://attacomsian.com/blog/java-new-date-time-api#chrono-units-enum) enum class was introduced in Java 8 to represent individual date and time units such as day, month, year, week, hour, minutes, etc.

The `between()` method returns a negative difference in days if the start is after the end date, as shown below:

```java
System.out.println(ChronoUnit.DAYS.between(endZonedDateTime, startZonedDateTime)); // -233
```

You can also use the `ChronoUnit` enum to calculate the difference between two `ZonedDateTime` objects in weeks, months, and years:

```java
System.out.println(ChronoUnit.WEEKS.between(startZonedDateTime, endZonedDateTime)); // 33
System.out.println(ChronoUnit.MONTHS.between(startZonedDateTime, endZonedDateTime)); // 7
System.out.println(ChronoUnit.YEARS.between(startZonedDateTime, endZonedDateTime)); // 0
```

Read [this article](https://attacomsian.com/blog/java-date-difference) to learn more about calculating the difference between two dates in Java.
