当前位置: 代码迷 >> Java相关 >> [求助]equals的大问题
  详细解决方案

[求助]equals的大问题

热度:180   发布时间:2006-10-09 09:56:08.0
[求助]equals的大问题

些代码为什么会是false?为什么!equals不是比的对象的内容吗?都是指向100呀,请知道内情的人透露一二,谢谢了!
class Value {
int i;
}

public class EqualsMethod2 {
public static void main(String[] args) {
Value v1 = new Value();
Value v2 = new Value();
v1.i = v2.i = 100;
System.out.println(v1.equals(v2));
}
}

搜索更多相关的解决方案: equals  

----------------解决方案--------------------------------------------------------
那是因为你没有重写equals方法
所以它调用的是Object的方法,所以会得出false
你应该改为
class Value{
int i;
public boolean equals(Object o){
if(o instanceof Value){
return this.i==((Value)o).i;
}
else
return false;

}


}
----------------解决方案--------------------------------------------------------
谢谢版主!问题可以解决
但我想知道instanceof是什么意思?
我查API好像没有..
能告诉我具体哪个类中吗?
----------------解决方案--------------------------------------------------------

问题已解决,是判断 是否是一个对象的...

谢谢版主的帮助.


----------------解决方案--------------------------------------------------------
你的头像不错,写得很好
----------------解决方案--------------------------------------------------------

又学到了东西`


----------------解决方案--------------------------------------------------------
我也是!~
----------------解决方案--------------------------------------------------------
  相关解决方案