我正在制作一种方法来.equals
替换使用的equals
方法。它接受一个对象。我希望它检查该对象是否等于运行该类的.equals
类。
我知道我想将我拥有的所有私有方法与该对象进行比较。
有没有办法在不创建另一个私有类从对象中获取私有变量的情况下做到这一点?我该怎么做才能比较平等而不是身份?我坚持这一点。我必须用来==
比较吗?
也在网上看我看到其他人使用递归。如果这是我必须这样做的方式,你能告诉我并向我解释吗?
所以我有一个例子
public boolean equals(Object o)
{
这是在一个我们将称为 bobtheBuilder 的类中(首先出现在我的脑海中)我想检查对象 o 是否等于该类。bobTheBuilder 具有私有对象数组和私有 int。我假设我想检查此类的数组和 int 是否等于对象的数组和 int。首先我知道我需要检查它是否等于 null 所以
private _arrayObject[];
private _integerBob;
public boolean equals(Object o)
{
boolean result = true;
if (o == null)
result = false
bobTheBuilder compared = (bobTheBuilder) o;
if(compared.getArray != _arrayObject[] || compared.getInt != _integerBob)
result == false
return result
}
我知道平等检查平等而不是身份,所以我认为这是错误的。我该怎么做