bur*_*gar 0 java iterator compare
我试图比较迭代器中的2个x实例的值.
x是包含其自己的数据成员的引用类型.我试图将x的一个实例与另一个实例进行比较,以确定每个实例中的值是否相同.
if(x.equals(x))
实际上每个x实例的值不同时,会将评估结果保持为true.
干杯.
假设您的代码看起来不像这样
X x = new X();
if(x.equals(x))
Run Code Online (Sandbox Code Playgroud)
但更喜欢
X x = new X();
X y = new X();
if(x.equals(y)) { }
Run Code Online (Sandbox Code Playgroud)
你得到了错误的值,x.equals(y)
那么你的equals实现就会被打破.
转到您的Class X
并检查equals的实现方式.如果没有在X中实现超级类检查.