我在比较两个数据类型变量 - > java.sql.Date类型时发现了一些问题。在java中比较两个日期类型变量
首先即时createing电流数据(YYYY-MM-DD):
java.util.Date date = new java.util.Date();
java.sql.Date dateSql = new Date(date.getTime());
Secoundly,从MySQL即时接收数据:
MyDataEntity myDataEntity = session.getNamedQuery(MyDataEntity.GET_ELEMENT).uniqueResult();
然后我试图比较两个日期:
if(dataSql != myDataEntity.getDate()){
System.out.println("different");
}else{
System.out.println("these same");
}
而效果是,总是这两个日期不同。但是,当我打印的这两个DATAS的价值观,我有同样的价值观:
System.out.println(dataSql);
System.out.println(myDataEntity.getDate);
效果:
2012-11-16
2012-11-16
但是,我发现一个问题:
,如果我做:
long date1 = dateSql.getTime(); // print 1353106800000
long date2 = myDataEntity.getDate().getTime(); // print 1353234605091
那么如何比较两个日期(yyyy-mm-dd)?