0

我正在ArrayList使用 for 循环删除我的数据,但循环只删除我列表的最后一个索引。这有什么问题?我认为这很容易,但我需要一个小时仍然无法解决这个问题。

 for (int i = 0; i < selectedRowFile.size() - 1; i++) {
     imagesFileName.remove(i);
         mylist.remove(i);
     adapter.notifyDataSetChanged();
     Toast.makeText(getApplicationContext(),"" + selectedRowFile.size() , Toast.LENGTH_LONG).show();
}
4

2 回答 2

4

您应该使用Iterator从 List 中删除一个元素。

        Iterator<YourDataType> it = YourList.iterator();
        while (it.hasNext()) 
               it.remove();

有了这个,您可以使用 if-else 来指定应该删除的元素。

应该给你一些提示,为什么你应该使用迭代器。

于 2013-07-04T12:06:20.020 回答
2

我不知道您为什么要使用 for 循环,但您也可以ArrayList使用 clear 清除对象。

List myList = new ArrayList<Object>();
myList.clear();

使用 for 循环清除 anArrayList对我来说似乎是可疑的。

于 2013-07-04T12:05:45.477 回答