我有一个arrayList,我想知道新添加的项目是否已经在列表中。

    protected void onPostExecute(Void result1) {
            //TODO Auto-generated method stub
            super.onPostExecute(result1);
            progressBar.dismiss();

            if(status == 1) {
                //arrayListItemEntries.add(itemEntryAdded);
                System.out.println(itemEntryAdded);
                System.out.println(arrayListItemEntries.get(arrayListItemEntries.size()-1));
                arrayListNewItems.add(itemEntryAdded);
                adapterItem.notifyDataSetChanged();
                toastMsg = "Item " + description +" is added on the list";
            }
            else
            {
                toastMsg ="Item not Found";
            }
            makeToast(toastMsg);
        }

    }


在线上,

 System.out.println(arrayListItemEntries.get(arrayListItemEntries.size()-1));


它输出null,为什么呢?当我想输出列表大小时,它是正确的。

最佳答案

尝试这样的事情:

if(arrayListItemEntries.contains(itemEntryAdded))
        // do nothing - already there in list
else
        arrayListItemEntries.add(itemEntryAdded);

10-04 23:36