_021_java_JAVA中的时间大小比较

来自https://blog.csdn.net/lom9357bye/article/details/50347689,感谢作者的无私分享。

1.时间的比较

[java]  view plain  copy
  1. <code class="language-java">import java.text.DateFormat;  
  2. import java.text.ParseException;  
  3. import java.text.SimpleDateFormat;  
  4. import java.util.Date;  
  5.   
  6. public class DateTest {  
  7.   
  8.     /** 
  9.      * @param args 
  10.      */  
  11.     public static void main(String[] args) {  
  12.         // TODO Auto-generated method stub  
  13.         DateFormat df = new SimpleDateFormat("HH:mm:ss");//创建日期转换对象HH:mm:ss为时分秒,年月日为yyyy-MM-dd  
  14.         try {  
  15.             Date dt1 = df.parse("15:00:00");//将字符串转换为date类型  
  16.             Date dt2 = df.parse("17:00:00");  
  17.             if(dt1.getTime()>dt2.getTime())//比较时间大小,如果dt1大于dt2  
  18.             {  
  19.                 System.out.println("yes");  
  20.             }  
  21.             else  
  22.             {  
  23.                 System.out.println("no");//运行输出no  
  24.             }  
  25.         } catch (ParseException e) {  
  26.             // TODO Auto-generated catch block  
  27.             e.printStackTrace();  
  28.         }  
  29.   
  30.     }  
  31.   
  32. }</code>  

来源:http://lqzit.iteye.com/blog/1103345


2.计算两个日期之间相差的天数

  1. /**
  2. * 获取两个日期相差的天数
  3. *
  4. * @param startDateStr
  5. * @param endDateStr
  6. */
  7. public static int getDayBetweenTwoDate(String startDateStr, String endDateStr) {
  8. SimpleDateFormat simpleDateFormat = new SimpleDateFormat( "yyyy-MM-dd");
  9. int days = 0;
  10. try {
  11. Date startDate = simpleDateFormat.parse(startDateStr);
  12. Date endDate = simpleDateFormat.parse(endDateStr);
  13. Calendar startCalendar = Calendar.getInstance();
  14. startCalendar.setTime(startDate);
  15. Calendar endCalendar = Calendar.getInstance();
  16. endCalendar.setTime(endDate);
  17. //计算两个日期相差的天数
  18. //startCalendar.getTime().getTime()返回long毫秒数形式,毫秒转为秒所以除以1000
  19. //1天=24小时,1小时=60分,1分=60秒,所以两个时间的差再除以60 * 60 * 24换算成天的形式
  20. days = (( int) (startCalendar.getTime().getTime() / 1000) - ( int) (endCalendar.getTime().getTime() / 1000)) / ( 60 * 60 * 24);
  21. } catch (ParseException e) {
  22. e.printStackTrace();
  23. }
  24. return days;
  25. }

测试:

  1. public static void main(String[] args) {
  2. String start = "2015-10-01";
  3. String end = "2015-09-15";
  4. System.out.println(getDayBetweenTwoDate(start, end));
  5. }

输出:16

参考:Java 计算两个日期相差月数、天数

猜你喜欢

转载自blog.csdn.net/poiuyppp/article/details/80875195