黑马程序员—集合将自定义对象作为元素存储到ArrayList集合中,并去除重复元素。 比如:存人对象。同姓名同年龄,视为同一个人,为重复元素。

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------



package fourteen;
import java.util.*;
public class eleven {


/**
将自定义对象作为元素存储到ArrayList集合中,并去除重复元素。
比如:存人对象。同姓名同年龄,视为同一个人,为重复元素。
思路:
1.对人描述,将数据封装尽速对象。
2.定义容器将人存入。
3.取出。
*/
public static void sop(Object j)
{
System.out.println(j);
}

public static void main(String[] args) {
ArrayList a=new ArrayList();
a.add(new person("lisii1",19));
a.add(new person("lisii1",19));
a.add(new person("lisii2",190));
a.add(new person("lisii3",194));
a.add(new person("lisii3",194));
sop("remove1:"+a.remove(new person("lisii3",194)));
a=singleElement(a);
Iterator it=a.iterator();
while(it.hasNext())
{
person p=(person)it.next();
sop(p.getname()+"::"+p.getage());
}
}
public static ArrayList  singleElement(ArrayList a)
{
ArrayList newa=new ArrayList();
Iterator it=a.iterator();
while(it.hasNext())
{
Object obj=it.next();
if(!newa.contains(obj))
newa.add(obj);

}
return newa;
}
}


class person
{
private String name;
private int age;
person(String name,int age)
{
this.name=name;
this.age=age;
}
public boolean equals(Object obj)
{
if(!(obj instanceof person))
return false;
person p=(person)obj;
System.out.println(this.name+"...."+p.name);
return this.name.equals(p.name)&&this.age==p.age;
}
/**/
public String getname()
{
return name;
}
public int getage()
{
return age;
}
}

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值