如何从 ArrayList 的 ArrayList 中删除 ArrayList?

ArrayList<ArrayList<String>> b = new ArrayList<ArrayList<String>>();

我有一个像上面那样的 ArrayList,其中有一堆 ArrayList 作为元素,有没有办法通过索引删除其中一个?

我创建了一个for循环来删除其中一个 ArrayList,并收到一条错误消息,指出存在不兼容的类型。

for(int f = 0; f < longDistanceInput.size(); f++){
     ArrayList<ArrayList<String>> newLongDisinput = longDistanceInput.remove(f);
}

提前致谢。


30秒到达战场
浏览 69回答 1
1回答

慕森王

我尝试做这样的事情并收到一条错误消息,指出类型不兼容for(int&nbsp;f&nbsp;=&nbsp;0;&nbsp;f<longDistanceInput.size();&nbsp;f&nbsp;++){ &nbsp;&nbsp;&nbsp;ArrayList<ArrayList<String>>&nbsp;newLongDisinput&nbsp;=&nbsp;longDistanceInput.remove(f);}那是因为longDistanceInput.remove(f)返回 a&nbsp;ArrayList<String>,而不是 a&nbsp;ArrayList<ArrayList<String>>。尝试:ArrayList<String>&nbsp;newLongDisinput&nbsp;=&nbsp;longDistanceInput.remove(f);但是:在向前迭代时要小心删除内容:您最终只会删除列表中的一半项目,因为您会跳过紧接着删除的项目之后的项目。要么反向迭代;或者只是使用longDistanceInput.remove(0)而不是remove(f).&nbsp;但请注意,从 an 的大索引末尾以外的任何内容中删除ArrayList都是相当低效的:如果可能的话,在循环结束之前不要从列表中删除内容。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java