package com.levelup.java.date.between; import static org.junit.Assert.assertEquals; import java.time.LocalDate; import java.time.Period; import java.time.temporal.ChronoUnit; import org.joda.time.DateTime; import org.joda.time.Days; import org.junit.Test; /** * This java example will demonstrate finding the * number of days between two dates. * * @author Justin Musgrove * @see <a href='http://www.leveluplunch.com/java/examples/number-of-days-between-two-dates/'>Number of days between two dates</a> * */ public class DaysBetweenDates { @Test public void days_between_two_dates_in_java_with_java8 () { LocalDate startDate = LocalDate.now().minusDays(1); LocalDate endDate = LocalDate.now(); long days = Period.between(startDate, endDate).getDays(); assertEquals(1, days); // or long days2 = ChronoUnit.DAYS.between(startDate, endDate); assertEquals(1, days2); } @Test public void days_between_two_dates_in_java_with_joda () { // start day is 1 day in the past DateTime startDate = new DateTime().minusDays(1); DateTime endDate = new DateTime(); Days d = Days.daysBetween(startDate, endDate); int days = d.getDays(); assertEquals(1, days); } }