ArrayList arReceipient = new ArrayList();在全球宣布。 arraylist填充如下
arReceipient.add(new MyItem(data.get(i).getId(),data.get(i).getNickName()));
导致
sId 1000002327 sName htc1
sId 1000002208 sName htcandroid
sId 1000002208 sName htcandroid
sId 1000002242 sName htcandroid1
sId 1000000721 sName bachan
sId 1000000721 sName bachan
sId 1000000810 sName bachan2
如何删除重复条目,结果为
sId 1000002327 sName htc1
sId 1000002208 sName htcandroid
sId 1000002242 sName htcandroid1
sId 1000000721 sName bachan
sId 1000000810 sName bachan2
这是MyItem类
public class MyItem {
public String sId;
public String sName;
public MyItem(String sid, String sname){
this.sId=sid;
this.sName=sname;
}
}
答案 0 :(得分:1)
而不是列表使用set
。
LinkedHashSet<MyItem> arReceipient =new LinkedHashSet<MyItem>();
并在MyItem
public class MyItem {
public String sId;
public String sName;
public MyItem(String sid, String sname){
this.sId=sid;
this.sName=sname;
}
public boolean equals(Object o){
if(!(o instanceof MyItem)) return false;
return sId==((MyItem)o).sId;
}
}
答案 1 :(得分:0)
ArrayList list = new ArrayList();
HashSet hashmap = new HashSet();
hashmap.addAll(list);
list.clear();
list.addAll(hashmap);