java date 比较时间

比较两个时间,不用自己写date.getTime()然后相减,java有提供给我们这个方法-compareTo;

两个Date类型的变量可以通过compareTo方法来比较。此方法的描述是这样的:

如果参数 Date 等于此 Date,则返回值 0;如果此 Date 在 Date 参数之前,则返回小于 0 的值;

如果此 Date 在 Date 参数之后,则返回大于 0 的值。 

实际上比较的是自1970 年 1 月 1 日 00:00:00 GMT以来的毫秒数。毫秒数越大的时间越大。 
如: 
Java代码  收藏代码
  1. import java.text.DateFormat;  
  2. import java.text.ParseException;  
  3. import java.text.SimpleDateFormat;  
  4. import java.util.Date;  
  5.   
  6. public class DateCompare {  
  7.   
  8.     /** 
  9.      * @param args 
  10.      * @throws ParseException 
  11.      */  
  12.     public static void main(String[] args) throws ParseException {  
  13.         String DateStr1 = "2011-11-1 11:11:11";  
  14.         String DateStr2 = "2011-11-07 15:15:15";  
  15.         DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  16.         Date dateTime1 = dateFormat.parse(DateStr1);  
  17.         Date dateTime2 = dateFormat.parse(DateStr2);  
  18.         int i = dateTime1.compareTo(dateTime2);  
  19.         System.out.println(i < 0);  
  20.     }  
  21.   
  22. }  

打印出:true 

附:jap页面上用struts标签比较两个时间
<s:set name="todayTime" value="new java.util.Date()"/>
  <s:if test="#todayTime.compareTo(#pl.endTime)<0">//如果今天这个时间小于目标时间

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页