gpt4 book ai didi

Java - 如何从集合中删除具有相同属性值的元素?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:37:56 24 4
gpt4 key购买 nike

假设有一个具有 SomeField 属性的 SomeClass 元素的集合。如何从此集合中删除具有等效 SomeField 属性的重复元素并仅保留一个具有该 SomeField 值的元素?

最佳答案

您需要为 SomeClass 实现 hashCode 和 equals,以便仅考虑 SomeField。

class SomeClass {
private SomeField field;
public int hashCode() {
return field.hashCode();
}
public boolean equals(Object o) {
if (o instanceof SomeClass == false){
return false
}
SomeClass someClass = (SomeClass)o;
return someClass.field.equals(this.field)

}
}

现在您可以将所有内容放入 Set 中以删除重复项

Set set = new HashSet(collection);

关于Java - 如何从集合中删除具有相同属性值的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28146484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com