我是java的新手,我想知道equales和==之间有什么区别, 我知道你可以骑过马厩,你不能过度==,但是怎么样?
让我说我有java类狗,如果狗是同一种类型,我希望它们是平等的,我该怎么办呢?
public class Dogs{
private String dogKind;
public Dogs(String kind){
this.dogKind = kind
}
public String getDogKind(){
return this.dogKind;
}
}
那么我如何覆盖equales呢?
答案 0 :(得分:0)
只是简单地在网上阅读(这么多好的答案),如果你不明白:
您需要在Dogs类中添加它,只需执行:
@Override
public boolean equals(Object obj) {
if (!obj instanceof Dogs){
return false;
}
return this.dogKind.equals(((Dogs)obj).getDogKind());
}
第一部分确保给予方法的对象不为null或来自不同的类。
第二部分只使用String equals来检查字符串是否相同。