compareTo经常用于比较日期的大小,其实java里面想要比较两个Date用此方法很方便,直接进行调用即可,我们根据返回的数值来判断是大于等于还是小于,这里我们进行实际代码格式分析compareTo(Date time1,Date time2) 其中return 1表示time1 > time2 ,return 0 表示time1 = time2 ,return -1 表示time1 < time2.很简单吧!!下面我们进行源码分析,毕竟没有任何一个开发者仅仅想知道知道这个结论!
/**
* Compares two Dates for ordering.
*
* @param anotherDate the <code>Date</code> to be compared.
* @return the value <code>0</code> if the argument Date is equal to
* this Date; a value less than <code>0</code> if this Date
* is before the Date argument; and a value greater than
* <code>0</code> if this Date is after the Date argument.
* @since 1.2
* @exception NullPointerException if <code>anotherDate</code> is null.
*/
public int compareTo(Date anotherDate) {
long thisTime = getMillisOf(this); //this表示当前当前时间转化成毫秒数
long anotherTime = getMillisOf(anotherDate); //anotherDate此时间转化成毫秒数
return (thisTime<anotherTime ? -1 : (thisTime==anotherTime ? 0 :