我有一个下列问题 我有两个空的对象,我使用equals()方法对它们进行比较,因为我们知道equals方法比较对象的内容,但在这种情况下,我没有任何属性我的目标比较空对象
Object ob1 = new Object();
Object ob2 = new Object();
if(ob1.equals(ob2)){
System.out.println(" they are Equal");
}
else{
System.out.println("not equal");
}
if(ob1 == ob2){
System.out.println(" they are Equal");
}
else{
System.out.println("not equal");
}
我们知道==将比较对象
会有什么equals方法比较这里的参考?
在此先感谢...
对不起 - 不得不投票,因为这在JavaDocs中很明显得到了回答。 –
'equals()'不会像您认为的那样比较对象的内容。它在被调用的对象的类中使用'equals()'的实现来比较对象。这个'equals()'方法可以根据对象的类型做各种不同的事情。在Object中,如果两个实例完全相同,equals()会认为两个实例相等。 –
它与'=='运算符做同样的事情。看看Objest.equals来源。 – aim