当前位置: 代码迷 >> J2EE >> 昨天无聊试了下DATE方式的比较值,发现个奇怪的有关问题
  详细解决方案

昨天无聊试了下DATE方式的比较值,发现个奇怪的有关问题

热度:170   发布时间:2016-04-22 03:13:28.0
昨天无聊试了下DATE方式的比较值,发现个奇怪的问题
public class Test {
public static void main(String[] args) {
Date date=new Date();
System.out.println(date.getTime());
Date date2=new Date();
System.out.println(date2.getTime());
boolean a=true;
if(date.equals(date2)){
a=true;

}else{
a=false;
}
System.out.println(a);
}
}
这样返回的是true
public class Test {
public static void main(String[] args) {
Date date=new Date();
System.out.println(date);
Date date2=new Date();
System.out.println(date2);
boolean a=true;
if(date.equals(date2)){
a=true;

}else{
a=false;
}
System.out.println(a);
}
}
这样返回的是false
...难道在System.out.println里改变了一下值也会影响到if里的判断么?

------解决方案--------------------
那和你机器有关,要是机器在运行到System.out.println(date); 的时候刚好卡了一下,导致date和date2不一样,那打印当然是false了。
在我机器上一直都是true
  相关解决方案