1. 计算两个日期相差几天
/** * 计算两个日期之间相差的天数 */ public static int daysBetween(String effectiveDate) { try { String current = getSystemTime(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Calendar cal = Calendar.getInstance(); cal.setTime(sdf.parse(current)); long time1 = cal.getTimeInMillis(); cal.setTime(sdf.parse(effectiveDate)); long time2 = cal.getTimeInMillis(); long between_days = (time2 - time1) / (1000 * 3600 * 24); return Integer.parseInt(String.valueOf(between_days)); } catch (ParseException e) { e.printStackTrace(); } return 0; }
2. 两个日期前后比较 (eg: 有效期是否已经过了 -1:未过, 1:已经过了)
// 日期比较 public int compareTime(String bijiaoTime) { String current = getSystemTime(); DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); try { Date dt1 = df.parse(bijiaoTime); Date dt2 = df.parse(current); if (dt1.getTime() >= dt2.getTime()) { System.out.println("当前时间小于比较的时间"); return -1; } else if (dt1.getTime() < dt2.getTime()) { System.out.println("当前时间大于比较的时间"); return 1; } } catch (Exception exception) { exception.printStackTrace(); } return 0; } public static String getSystemTime() { SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");// 设置日期格式 String created = df.format(new Date()); return created; }