Java ArrayList对象集合去重
发布时间:2020-12-15 07:31:02 所属栏目:Java 来源:网络整理
导读:import java.util.ArrayList;import java.util.Iterator;public class StringSampleDemo { public static void main(String[] args) { ArrayList al = new ArrayList(); al.add(new Student("zhangsan1",20,"男")); al.add(new Student("zhangsan1","男"));
import java.util.ArrayList; import java.util.Iterator; public class StringSampleDemo { public static void main(String[] args) { ArrayList al = new ArrayList(); al.add(new Student("zhangsan1",20,"男")); al.add(new Student("zhangsan1","男")); al.add(new Student("lilin1",21,"女")); al.add(new Student("lilin1","女")); al.add(new Student("lisi",25,"男")); al = getUniqueList(al); for (Object o : al) { Student s = (Student) o; System.out.println(s.getName() + "...." + s.getAge() + "...." + s.getSex()); } /** 去重后的集合数据 * * zhangsan1....20....男 * lilin1....21....女 * lisi....25....男 */ } /** * 去除重复对象 * * @param al * @return */ public static ArrayList getUniqueList(ArrayList al) { ArrayList tempAl = new ArrayList(); Iterator it = al.iterator(); while (it.hasNext()) { Object obj = it.next(); if (!tempAl.contains(obj)) //不存在则添加 { tempAl.add(obj); } } return tempAl; } } class Student { private String name; private int age; private String sex; public Student(String name,int age,String sex) { this.name = name; this.age = age; this.sex = sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } /** * 重点是重写比较方法 * * @param obj * @return */ @Override public boolean equals(Object obj) { if (obj instanceof Student) { Student s = (Student) obj; return this.name.equals(s.name) && this.age == s.age && this.sex.equals(s.sex); } else { return false; } } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |