您的位置:首页 > 移动开发 > Objective-C

向ArrayList集合中存入对象,并以让集合用自己设定的方式去除重复元素!(覆写equals方法)

2012-04-28 17:29 791 查看
import java.util.*;
class Person
{
private String name;
private int age;
Person(String name,int age)
{
this.name=name;
this.age=age;
}
public void seName()
{
this.name=name;
}
public void setAge()
{
this.age=age;
}
public String getName()
{
return name;
}
public int getAge()
{
return age;
}
public boolean equals(Object obj)
{

if (!(obj instanceof Person))
{
return false;
}
Person p=(Person)obj;
return this.name.equals(p.name)&&this.age==p.age;
}

}
class Compare
{
public ArrayList com(ArrayList a)
{
ArrayList a1=new ArrayList();
Iterator t=a.iterator();
while (t.hasNext())
{
Object obj=t.next();
if (!a1.contains(obj))
{
a1.add(obj);
}
}
return a1;
}
}
class ArrayListCompare
{
public static void main(String[] args)
{
ArrayList a=new ArrayList();
a.add(new Person("xxc01",10));
a.add(new Person("xxc02",20));
a.add(new Person("xxc03",30));
a.add(new Person("xxc04",40));
a.add(new Person("xxc03",30));
a.add(new Person("xxc01",10));
Compare c=new Compare();
a=c.com(a);
Iterator t=a.iterator();
while (t.hasNext())
{
Person p=(Person)t.next() ;
System.out.println(p.getName()+"==========="+p.getAge());
}
}
}
ArrayList和LinkedList中的contains方法和remove方法调用的都是底层equals方法!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐