I am trying to find days difference between two dates. I am using JDK 1.7 (cannot change it). Somehow JDK ignores March 9th in difference calculations, while JODA API calculates it correctly. Here is the code i executed using TimeUnit and JODA API.
String dateStart = "11/16/2019 00:00:00";
String dateStop = "05/15/2020 00:00:00";
SimpleDateFormat format2 = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
firstDate = format2.parse(dateStart);
secondDate = format2.parse(dateStop);
long diffInMillies = secondDate.getTime() - firstDate.getTime();
long diff = TimeUnit.DAYS.convert(diffInMillies, TimeUnit.MILLISECONDS);
System.out.println(">>>>>>>>>>>>");
System.out.println("difference in days is " + diff);
// Days.bet(firstDate, secondDate);
DateTime dateTime1 = new DateTime(firstDate.getTime());
DateTime dateTime2 = new DateTime(secondDate.getTime());
System.out.println("Difference by JODA API " + Days.daysBetween(dateTime1,dateTime2 ).getDays());
Here the output i got, Seems a bug in JDK. Could anyone please let me know if i am mistaken.
Difference in days is 180
Difference by JODA API 181