只是想檢查數據是否已存在或不在ArrayList中,但每次獲取:不存在(s)而數據存在於ArrayList中,因此我得到重複記錄名單..ArrayList檢查數據是否已存在
DataArrayList.secondArraylist.add(new Second(actorList.get(position).getName(), actorList.get(position).getImage()));
System.out.println(DataArrayList.secondArraylist.size());
String strName = actorList.get(position).getName().toString();
Log.d("name:", strName);
for(int i=0; i<DataArrayList.secondArraylist.size(); i++)
{
if(DataArrayList.secondArraylist.get(i).getName().equals(strName)) {
System.out.println(DataArrayList.secondArraylist.get(i).getName());
Toast.makeText(context, "Exist(s)", Toast.LENGTH_SHORT);
}
else {
Toast.makeText(context, "Not Exist(s)", Toast.LENGTH_SHORT);
}
}
問題:
沒有得到任何消息吐司,我使用,以表明 「數據存在」 或 「不是」
最後其中:
我想補充項目的ArrayList,如果已經不存在的(一個或多個),否則要顯示吐司該項目已經存在(一個或多個)
equals方法比較對象。在這裏,你正在比較列表對象與錯誤的列表項。您需要遍歷列表以檢查特定名稱是否存在。 –
**條件**中的錯誤。打印「DataArrayList.secondArraylist」和「strName」的值你會發現錯誤。 – Wizard
檢出:http://stackoverflow.com/questions/14192532/how-to-prevent-the-adding-of-duplicate-objects-to-an-arraylist –