java8-stream
使用之前,实体类要重写equals和hashCode才会生效。
public static void main(String[] args) { List<Person> list1 = new ArrayList<>(); List<Person> list2 = new ArrayList<>(); Person person1 = new Person(); Person person2 = new Person(); Person person3 = new Person(); person1.setId(1); person1.setName("张三"); person1.setPhone("111"); person1.setAddress("88"); person2.setId(2); person2.setName("李四"); person2.setPhone("222"); person2.setAddress("99"); person3.setId(1); person3.setName("张三"); person3.setPhone("111"); person3.setAddress("88"); list1.add(person1); list1.add(person2); list2.add(person3); list1.addAll(list2); List<Person> collect = list1.stream().distinct().collect(Collectors.toList()); System.out.println(collect); }
输出结果