I would use a Calendar - set it to the same date/time as the Date, then change the time to midnight on that day. Get a new Date to represent that date/time. Then add 1 to the date, so that the Calendar now represents midnight on the next day. Get another Date to represent that date/time. You can then find how much time difference there is between the two using getTime() to convert each Date to milliseconds. Compare this difference to 24 * 60 * 60 * 1000 to see if the difference is more or less than what you'd expect.