我有一個保存信息的類的ArrayList
,我想將對象添加到此列表中。我想查看該列表是否已經包含一個數字,然後將其添加到列表中。檢查類的ArrayList是否有重複記錄
通常情況下,如果它只是一個字符串列表,我只想做這樣的事情
if(!list.contains("this string")){
list.add("this string");
}
但由於這是一類,它有每個索引多個變量。
類世界的一個例子是這樣的:
private class From{
private long threadID;
private long date;
private String address;
private String body;
private int type;
private long id;
@Override
public boolean equals(Object obj){
if(obj != null){
if(getClass() != obj.getClass()){
return false;
}else{
final From from = (From)obj;
if((this.address != null) ? (from.address != null) : !this.address.equals(from.address)){
return false;
}
}
}else{
return false;
}
return true;
}
}
我想看看是否已經有相同數量的條目,所以我要去通過各項指標必須手動循環和檢查,或者是否有更簡單的方法來做我想做的事情?
編輯:
我怎麼稱呼它
HashSet<From> addresses = new HashSet<From>();
From f = new From();
f.setAddress(messages.getString(3));
f.setBody(messages.getString(0));
f.setDate(messages.getLong(2));
f.setThreadId(messages.getLong(1));
f.setType(1);
if(!addresses.contains(f.address)){
addresses.add(f);
}
考慮使用'Map' – 2013-02-21 18:13:10