ArrayList 的删除重复元素以及删除
2012-07-05 21:40
295 查看
[align=left]package 集合;[/align]
[align=left]import java.util.ArrayList;[/align]
[align=left]import java.util.Iterator;[/align]
[align=left]import java.util.LinkedList;[/align]
[align=left]/*将自定义对象作为元素,存到ArrayList集合中,并去除重复元素*/[/align]
[align=left]public class ArrayListTest2[/align]
[align=left]{[/align]
public static void main(String[]
args)
[align=left] {[/align]
[align=left] ArrayList al = new ArrayList();[/align]
al.add(new Person("List01",
30));
al.add(new Person("List02",
31));
al.add(new Person("List03",
32));
al.add(new Person("List04",
33));
[align=left] [/align]
al.add(new Person("List04",
33));
al.add(new Person("List04",
33));
[align=left] [/align]
[align=left] al = singleElement(al);[/align]
System.out.println("remove"+al.remove(new Person("List01",
30)));
[align=left] [/align]
[align=left] Iterator it = al.iterator();[/align]
[align=left] while(it.hasNext())[/align]
[align=left] {[/align]
[align=left] Person p = (Person) it.next();[/align]
[align=left] System.out.println(p.getName()+"::"+p.getAge());[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left] public static ArrayList singleElement(ArrayList al)[/align]
[align=left] {[/align]
[align=left] //定义一个临时容器[/align]
[align=left] ArrayList newAL = new ArrayList();[/align]
[align=left] Iterator it = al.iterator();[/align]
[align=left] while(it.hasNext())[/align]
[align=left] {[/align]
[align=left] Object obj = it.next();[/align]
if(!newAL.contains(obj)
)
[align=left] newAL.add(obj);[/align]
[align=left] }[/align]
[align=left] return newAL;[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]class Person[/align]
[align=left]{[/align]
[align=left] private String name;[/align]
[align=left] private int age;[/align]
[align=left] Person(String name,int age)[/align]
[align=left] {[/align]
this.name =
name;
this.age =
age;
[align=left] }[/align]
public String
getName()
[align=left] {[/align]
[align=left] return name;[/align]
[align=left] }[/align]
[align=left] public int getAge()[/align]
[align=left] {[/align]
[align=left] return age;[/align]
[align=left] }[/align]
public boolean equals(Object
obj)
[align=left] {[/align]
[align=left] if(!(obj instanceof Person))[/align]
[align=left] return false;[/align]
[align=left] Person p = (Person)obj;[/align]
return this.name.equals(p.name)&&this.age ==
p.age;
[align=left] }[/align]
[align=left]}[/align]
[align=left]removetrue[/align]
[align=left]List02::31[/align]
[align=left]List03::32[/align]
[align=left]List04::33[/align]
[align=left]import java.util.ArrayList;[/align]
[align=left]import java.util.Iterator;[/align]
[align=left]import java.util.LinkedList;[/align]
[align=left]/*将自定义对象作为元素,存到ArrayList集合中,并去除重复元素*/[/align]
[align=left]public class ArrayListTest2[/align]
[align=left]{[/align]
public static void main(String[]
args)
[align=left] {[/align]
[align=left] ArrayList al = new ArrayList();[/align]
al.add(new Person("List01",
30));
al.add(new Person("List02",
31));
al.add(new Person("List03",
32));
al.add(new Person("List04",
33));
[align=left] [/align]
al.add(new Person("List04",
33));
al.add(new Person("List04",
33));
[align=left] [/align]
[align=left] al = singleElement(al);[/align]
System.out.println("remove"+al.remove(new Person("List01",
30)));
[align=left] [/align]
[align=left] Iterator it = al.iterator();[/align]
[align=left] while(it.hasNext())[/align]
[align=left] {[/align]
[align=left] Person p = (Person) it.next();[/align]
[align=left] System.out.println(p.getName()+"::"+p.getAge());[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left] public static ArrayList singleElement(ArrayList al)[/align]
[align=left] {[/align]
[align=left] //定义一个临时容器[/align]
[align=left] ArrayList newAL = new ArrayList();[/align]
[align=left] Iterator it = al.iterator();[/align]
[align=left] while(it.hasNext())[/align]
[align=left] {[/align]
[align=left] Object obj = it.next();[/align]
if(!newAL.contains(obj)
)
[align=left] newAL.add(obj);[/align]
[align=left] }[/align]
[align=left] return newAL;[/align]
[align=left] }[/align]
[align=left]}[/align]
[align=left]class Person[/align]
[align=left]{[/align]
[align=left] private String name;[/align]
[align=left] private int age;[/align]
[align=left] Person(String name,int age)[/align]
[align=left] {[/align]
this.name =
name;
this.age =
age;
[align=left] }[/align]
public String
getName()
[align=left] {[/align]
[align=left] return name;[/align]
[align=left] }[/align]
[align=left] public int getAge()[/align]
[align=left] {[/align]
[align=left] return age;[/align]
[align=left] }[/align]
public boolean equals(Object
obj)
[align=left] {[/align]
[align=left] if(!(obj instanceof Person))[/align]
[align=left] return false;[/align]
[align=left] Person p = (Person)obj;[/align]
return this.name.equals(p.name)&&this.age ==
p.age;
[align=left] }[/align]
[align=left]}[/align]
[align=left]removetrue[/align]
[align=left]List02::31[/align]
[align=left]List03::32[/align]
[align=left]List04::33[/align]
相关文章推荐
- Java删除ArrayList中的重复元素的2种方法
- 链表逆转以及删除所有重复元素
- arrayList重复元素删除
- Java删除ArrayList中的重复元素的2种方法
- 两种方法删除ArrayList里重复元素
- 两种方法删除ArrayList里重复元素
- 两种方法删除ArrayList里重复元素
- 删除arraylist中的重复元素的方法
- 2种Java删除ArrayList中的重复元素的方法
- Java删除ArrayList中的重复元素
- Java删除ArrayList中的重复元素的2种方法
- 删除ArrayList中指定重复的元素 (…
- java 删除ArrayList LinkedList集合中的重复元素
- java 集合之ArrayList集合元素重复删除
- 两种方法删除ArrayList里重复元素
- Java删除ArrayList中的重复元素的2种方法
- java——定义一个功能将ArrayList 集合中的重复元素删除(java集合七)
- Java删除ArrayList中的重复元素的2种方法
- Java删除ArrayList中的重复元素的2种方法
- 删除ArrayList中重复元素