int a=10;
int b=10
则a==b将是true
对象比较需要equais
Object对象的equals方法实现:
boolean equals(Object o)
{
return this==o;
}
从上结论Object对象默认使用了==操作符。所以如果你自创的类没有覆盖equals方法。equals和==会得到同样的结果。
Class Monster{
private String content;
...
boolean equals(Object another){ return true;}
}
覆盖了equals方法,这个实现会导致无论Monster如何,它们之间的比较永远返回true。 |