Tag: duplicate removal

HashSet存储相等的对象

下面是从对象列表中查找重复对象的代码。 但由于某种原因,hashset甚至存储了相等的对象。 我当然错过了一些东西,但当我检查hashset的大小时,它出来了5。 import java.util.ArrayList; import java.util.HashSet; public class DuplicateTest { public static void main(String args[]){ ArrayList dogList = new ArrayList(); ArrayList duplicatesList = new ArrayList(); HashSet uniqueSet = new HashSet(); Dog a = new Dog(); Dog b = new Dog(); Dog c = new Dog(); Dog d = new Dog(); Dog e = new […]

在列表中查找重复项忽略字段

我有一个人员List ,我想找到重复的条目,包括除id之外的所有字段。 所以使用equals() – List.contains() (以及结果List.contains() ),因为它们考虑了id 。 public class Person { private String firstname, lastname; private int age; private long id; } 修改equals()和hashCode()方法以忽略id字段不是一个选项,因为代码的其他部分依赖于此。 如果我想忽略id字段,那么在Java中最有效的方法是整理重复项?