【发布时间】:2013-03-05 20:57:20
【问题描述】:
对于 ClassA 类,我有 2 个属性 - X 和 Y 我已经覆盖了 ClassA 的 equals 方法,以便通过检查属性 X 找到 2 个类的相等性。
ClassA {
Integer X,Y;
Integer getX(){return X;}
Integer getY(){return Y;}
boolean equals(object o){
return getX().equals((ClassA)o).getX());
}
}
现在我想从 List 中删除 ClassA 的所有重复元素 但是,如果发现 2 个元素重复,我想添加一个逻辑来根据 Y 标准删除重复的元素。 所以基本上它如下所示
if(A.eqauls(B)){
remove A , if A.getY() > B.getY()
ore remove B , if A.getY() < B.getY()
}
显然我会尝试对列表进行排序并查看相邻的重复元素,然后根据我们的逻辑删除重复项。 我想知道我是否可以使用集合来做到这一点。
【问题讨论】:
标签: java set duplicates