class Value{
int i;
public boolean equals(Value obj){
if (this.i==obj.i )
return true;
else return false;
}
}
public class Equalmethod {
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));
Integer it1= new Integer(4);
Integer it2= new Integer(4);
System.out.print(it1.equals(it2));
}
}
[b]OUT:[/b]true
true
[b]PS:[/b]
Equals()的默认行为时比较引用,所以在自己的新类中覆盖了Equals()方法,那么可以用来比较内容是否相等,在本例中的类Value中若删除重载的Equals方法,那么返回结果会是False,而Integer类中覆盖了Equals方法,所以结果是true
int i;
public boolean equals(Value obj){
if (this.i==obj.i )
return true;
else return false;
}
}
public class Equalmethod {
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));
Integer it1= new Integer(4);
Integer it2= new Integer(4);
System.out.print(it1.equals(it2));
}
}
[b]OUT:[/b]true
true
[b]PS:[/b]
Equals()的默认行为时比较引用,所以在自己的新类中覆盖了Equals()方法,那么可以用来比较内容是否相等,在本例中的类Value中若删除重载的Equals方法,那么返回结果会是False,而Integer类中覆盖了Equals方法,所以结果是true