最近在做日期比较的内容,记录一下。
时间格式为yyyy-MM-dd HH:mm:ss ,这里使用java.text包下的DateFormat。
List<String> s = new ArrayList<>();
s.add("2017-10-3 00:00:00");
s.add("2017-8-9 00:00:00");
for (int i = 0; i <s.size()-1; i++){
java.text.DateFormat df=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
java.util.Calendar c1=java.util.Calendar.getInstance();
java.util.Calendar c2=java.util.Calendar.getInstance();
try {
c1.setTime(df.parse(s.get(i)));
c2.setTime(df.parse(s.get(i+1)));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int result=c1.compareTo(c2);
if(result==0)
System.out.println("c1相等c2");
else if(result<0)
System.out.println("c1小于c2");
else
System.out.println("c1大于c2");
}
}
若时间格式只到天 yyyy-MM-dd,那么使用java.sql.Date.
List<String> s = new ArrayList<>(); s.add("2017-10-3 "); s.add("2017-8-9 "); for (int i = 0; i <s.size()-1; i++){ /*//可以比较两个时间的大小 Date date1 = null; Date date2 = null; date1 = java.sql.Date.valueOf(s.get(i)); date2 = java.sql.Date.valueOf(s.get(i+1)); System.out.println(date1); System.out.println(date2); int result = date1.compareTo(date2);
if(result==0) System.out.println("date1相等date2"); else if(result<0) System.out.println("date1小于date2"); else System.out.println("date2大于date2");}