java如何输出指定两个日期之间的所有日期

 1 package com.taozugong.admin.portal.controller;
 2 
 3 import java.text.*;
 4 import java.util.Date;
 5  
 6 public class DateTest {
 7     String dateFormat = "yyyy-MM-dd";
 8     SimpleDateFormat format = new SimpleDateFormat(dateFormat);
 9  
10     public static void main(String[] args) {
11         DateTest t = new DateTest();
12  
13         String date1 = "2012-02-26";
14         String date2 = "2012-08-04";
15  
16         t.process(date1, date2);
17     }
18  
19     private void process(String date1, String date2){
20         if(date1.equals(date2)){
21             System.out.println("两个日期相等!"); 
22             return;
23         }
24  
25         String tmp;
26         if(date1.compareTo(date2) > 0){  //确保 date1的日期不晚于date2
27             tmp = date1; date1 = date2; date2 = tmp;
28         }
29  
30         tmp = format.format(str2Date(date1).getTime() + 3600*24*1000);
31  
32         int num = 0; 
33         while(tmp.compareTo(date2) < 0){                   
34             System.out.println(tmp);    
35             num++;
36             tmp = format.format(str2Date(tmp).getTime() + 3600*24*1000);
37         }
38  
39         if(num == 0)
40             System.out.println("两个日期相邻!");
41     }
42  
43 private Date str2Date(String str) {
44         if (str == null) return null;
45  
46         try {
47             return format.parse(str);
48         } catch (ParseException e) {
49             e.printStackTrace();
50         }
51         return null;
52     }
53 }

 

posted @ 2018-11-07 19:18  huohuohiahia  阅读(1218)  评论(0编辑  收藏  举报