方法1
java 中一般情况下,不可以再用==来比较是否相等的情况,而是用equals方法来比较,
equals方法属于Object类并且不是final类型;所以任何类都可以继承并且覆盖该方法。
注意:
对象之间不可以用“==”来进行比较,是因为这样比较的是对象的内存地址,而不是对象中的具体属性。
覆盖后的equals方法比较的不再是两个对象的内存地址,而是根据自己的需要来决定。本例中比较的是变量i的值,当啷个对象的i都等于20,此时两个对象的比较结果返回了true
public class duibi {
public static void main(String[] args)
{
B b1=new B(20);
B b2=new B(20);
System.out.println(b1.equals(b2));
}
}
class B{
private int i;
B(int i)
{
this.i=i;
}
public boolean equals(B b2)
{
if(this.i==b2.i)
{
return true;
}
else
{
return false;
}
}
}