gpt4 book ai didi

Java HashSet 重复项比较

转载 作者:行者123 更新时间:2023-12-02 11:07:01 27 4
gpt4 key购买 nike

我有一个类Person,其中包含String firstName、lastName。我想将此类的实例插入 List 中,但我不想插入重复项。

如何使用 HashSet 以便它使用 firstName+lastName 之类的内容来找出重复项?

最佳答案

您的 Person 类中需要一个 equals() 和一个 hashCode() 方法。

equals() 很简单,对于 hashCode() 最简单的解决方案是:

public int hashCode() {
return Arrays.hashCode( new Object[] { firstName, lastName } );
}

尽管如果您的 Person 对象是不可变的(如果您将其放入 HashSet,则应该如此),您应该缓存此值。

关于Java HashSet 重复项比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5186081/

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