Solved

# Date Object comparison

Posted on 2004-08-30
215 Views
hi,
can you please tell me how to find the difference between two date objects.

0
Question by:roshanmatre
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 2
• 2
• 2
• +2

LVL 86

Accepted Solution

CEHJ earned 30 total points
ID: 11933835
long diff = date1.getTime() - date2.getTime(); // diff in ms
0

LVL 2

Assisted Solution

bcsonka earned 20 total points
ID: 11934308
Here's a link to a few simple examples . . .

http://www.javaalmanac.com/egs/java.util/CompDates.html
0

LVL 2

Expert Comment

ID: 11934372
Just a reminder, the examples above are for Calendar objects.  May or may not help you.  But worth a look.
0

Expert Comment

ID: 11934766
java.util;

Date someDate1;
Date someDate2;

int diff = someDate1.compareTo(someDate2);

if( diff < 0 )
{
//someDate1 is before someDate2
}

if( diff > 0 )
{
//someDate2 is before someDate1
}

if( diff == 0 )
{
//the dates are the same
}
0

LVL 37

Expert Comment

ID: 11936241
ipaman,
roshanmatre,

If all you want to know is how the dates relate to each other, you better use the Date functions after(), before() and equals().

- someDate1.before(someDate2) returns true if someDate1 is before someDate2
- someDate1.after(someDate2) returns true if someDate1 is after someDate2
- someDate1.equals(someDate2) returns true if someDate1 equals someDate2 (to the millisecond!)
0

Expert Comment

ID: 11936864
good point zzynx! either way will work. same amount of code. but I believe the compareTo() will be quicker at runtime. function is only called once.
0

LVL 3

Expert Comment

ID: 11939231
ipaman that depends on what you want to do with it. If you only want to check one of them no problem then using those are fine. Otherwise use the compareTo() if you want to check for all of the cases. Oh and CEHJ's answer will be faster still cuz it basically does what the compareTo() method does but without that extra stack calls and such needed for the extra method.
0

LVL 86

Expert Comment

ID: 12028866
:-)
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question