getTime
public long getTime()Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.
Returns:
the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this date.可以得到现在的时间距离1970年1月1日的毫秒数

解决方案 »

  1.   

    用compareTo(Date anotherDate)方法可得到差。
    要转化也是可以的。
      

  2.   

     Compute days between 2 dates
    import java.util.*;
    public class TestDate {
      public static void main(String args[]){
        /*
         ex . 
           java TestDate 1999 0 1 1999 8 1
               to get days between 1999-01-01 and 1999-09-01
              (remember months are zero-based...)
       */
      
        TestDate a = new TestDate(args);
        }  TestDate(String args[]) {
        Calendar c1 = new GregorianCalendar();;
        Calendar c2 = new GregorianCalendar();;    //  need more error checking here...
        c1.set(Integer.parseInt(args[0]),
               Integer.parseInt(args[1]) , 
               Integer.parseInt(args[2]), 0, 0, 0); 
        c2.set(Integer.parseInt(args[3]),
              Integer.parseInt(args[4]) , 
              Integer.parseInt(args[5]), 0, 0, 0);     System.out.println
           (daysBetween(c1.getTime(),c2.getTime()) +
            " day(s) between " + args[0] + "-" + args[1] + "-" + args[2] +
            " and " + args[3] + "-" + args[4] + "-" + args[5]);
        }  static final long ONE_HOUR = 60 * 60 * 1000L;
      public long daysBetween(Date d1, Date d2){
        return ( (d2.getTime() - d1.getTime() + ONE_HOUR) / 
                      (ONE_HOUR * 24));
         }   
      }