Java日期推迟计算、日期大小
1 /** 2 * 日期推迟计算 3 * @param date 4 * @param num 5 * @return java.util.HashMap<java.lang.String,java.lang.String> 6 */ 7 public static String dateAdd(String date, int num) throws ParseException { 8 SimpleDateFormat sj = new SimpleDateFormat("yyyy-MM-dd"); 9 Date dateFormat = sj.parse(date); 10 Calendar calendar = Calendar.getInstance(); 11 calendar.setTime(dateFormat); 12 calendar.add(calendar.DATE, num); 13 //System.out.println("期望日期:" + sj.format(calendar.getTime())); 14 return sj.format(calendar.getTime()); 15 }
1 /** 2 * 是否超过指定日期 3 * 4 * @param 5 * @return 6 */ 7 public boolean dateJudge(String start, String end) throws ParseException { 8 SimpleDateFormat sj = new SimpleDateFormat("yyyy-MM-dd"); 9 Date startDate = sj.parse(start); 10 Date endDate = sj.parse(end); 11 if (startDate.before(endDate)) { 12 return false; 13 } else { 14 return true; 15 } 16 }
1 public static void main(String[] args) throws ParseException { 2 String startDate = "2015-01-01"; 3 String endDate = "2015-01-15"; 4 String newDate = dateAdd(startDate, 1); 5 6 while (dateJudge(newDate, endDate)) { 7 String tempStartDate = dateAdd(newDate, -1); 8 System.out.println(tempStartDate + "___" + newDate); 9 newDate = dateAdd(newDate, 1);
10 } 11 12 }
1 public static void main(String[] args) throws ParseException { 2 String startDate = "2015-01-01"; 3 String endDate = "2015-01-17"; 4 String newDate = startDate; 5 6 while (dateJudge(newDate, endDate)) { 7 if (dateJudge(dateAdd(newDate, 2), endDate)) { 8 System.out.println(newDate.concat(" 00:00:00__________") + dateAdd(newDate, 2).concat(" 23:59:59")); 9 newDate = dateAdd(newDate, 3); 10 } else { 11 break; 12 13 } 14 } 15 while (dateJudge(newDate, endDate)) { 16 System.out.println(newDate); 17 newDate = dateAdd(newDate, 1); 18 } 19 }