下面是我的代码,
public class Myclass{
some code is here.
}
public static void main(String args[]){
Set<Myclass> set = new HashSet<Myclass>();
Myclass mc = new Myclass();
for(int i=0;i<2;i++){
set.add(mc);
}
System.out.println("size of set : "+set.size());
}
上面的代码打印输出2,但它会是1。我的代码有什么问题吗,如果有的话请建议我如何避免在集合中添加重复的条目。我已经重写了 Myclass 类中的 equals() 。
请尽快回复我。
谢谢。
最佳答案
您可能需要为 MyClass
实现 equals()
和 hashCode()
,否则它将无法正确检查相等性。
关于java.util.Set 添加重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4487072/