2005-10-9 16:22:17
2005-10-8 16:22:17
2005-4-9 16:22:17
2005-10-9 16:22:17我如何知道,哪两个日期相同,两个日期新,哪个日期旧呢?用代码怎么比较?有什么现成的方法吗?
不会用">,<"号吧?呵,,
2005-10-8 16:22:17
2005-4-9 16:22:17
2005-10-9 16:22:17我如何知道,哪两个日期相同,两个日期新,哪个日期旧呢?用代码怎么比较?有什么现成的方法吗?
不会用">,<"号吧?呵,,
前提先根据你的时间字符串构造出要比较的date
Date obj = sdf.parse("2005-10-9 16:22:17");//构造Date对象
Date obj2 = sdf.parse("2005-10-13 16:22:17");//构造Date对象
System.out.println(obj.compareTo(obj2));//比较
obj>obj2返回1
obj=obj2返回0
obj<obj2返回-1
Date obj = sdf.parse("2005-10-9 16:22:17");//构造Date对象
Date obj2 = sdf.parse("2005-10-13 16:22:17");//构造Date对象
System.out.println(obj.compareTo(obj2));//比较
import java.util.*;
import java.text.*;//SimpleDateFormat在此包中class CDate{
int compare(String d1,String d2){
int result=-2;
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
try{
Date obj1=sdf.parse(d1);
Date obj2=sdf.parse(d2);
result=obj1.compareTo(obj2);
}catch(ParseException pe){
System.out.println(pe.getMessage());
}
return result;
}
}class CompareDate{
public static void main(String arg[]){
String date1="2006-8-7 12:30:56";
String date2="2005-10-10 12:29:54";
CDate cd=new CDate();
int result = cd.compare(date1,date2);
if (result==-2) System.out.println("时间格式错误!");
if (result==0) System.out.println(date1+"与"+date2+"时间相等!");
if (result==-1) System.out.println(date1+"小于"+date2);
if (result==1) System.out.println(date1+"大于"+date2);
}
}