A
Date object represents a precise moment in time, down to the
millisecond. Dates are represented as a long that counts the
number of milliseconds since midnight, January 1, 1970, Greenwich
Meantime.
Does this have a year 2000 problem? If so in what year?
To create a Date object for the current
date and time use the noargs Date() constructor like this:
Date now = new Date();
To create a Date object for a specific
time, pass the number of milliseconds since midnight, January 1, 1970,
Greenwich Meantime to the constructor, like this:
Date midnight_jan2_1970 = new
Date(24L*60L*60L*1000L);
You can return the number of milliseconds in the Date
as a long , using the getTime() method. For
example, to time a block of code, you might do this
Date d1 = new Date();
// timed code goes here
Date d2 = new Date();
long elapsed_time = d2.getTime() - d1.getTime();
System.out.println("That took " + elapsed_time + " milliseconds");
You can change a Date by passing the new date
as a number of milliseconds since midnight, January 1, 1970, GMT, to the setTime()
method, like this:
Date midnight_jan2_1970 = new Date();
midnight_jan2_1970.setTime(24L*60L*60L*1000L);
The before() method returns true if this Date
is before the Date argument, false if it's not. For example
if (midnight_jan2_1970.before(new Date())) {
The after() method returns true if this Date
is after the Date argument, false if it's not. For example
if (midnight_jan2_1970.after(new Date())) {
The Date class also has the usual hashCode() ,
equals() , and toString() methods. |