为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 ArrayList 的 ArrayList 中删除 ArrayList?

如何从 ArrayList 的 ArrayList 中删除 ArrayList?

30秒到达战场 2023-09-20 16:20:46
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); }提前致谢。
查看完整描述

1 回答

?
慕森王

TA贡献1777条经验 获得超3个赞

我尝试做这样的事情并收到一条错误消息,指出类型不兼容

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

那是因为longDistanceInput.remove(f)返回 a ArrayList<String>,而不是 a ArrayList<ArrayList<String>>

尝试:

ArrayList<String> newLongDisinput = longDistanceInput.remove(f);

但是:在向前迭代时要小心删除内容:您最终只会删除列表中的一半项目,因为您会跳过紧接着删除的项目之后的项目。

要么反向迭代;或者只是使用longDistanceInput.remove(0)而不是remove(f). 但请注意,从 an 的大索引末尾以外的任何内容中删除ArrayList都是相当低效的:如果可能的话,在循环结束之前不要从列表中删除内容。


查看完整回答
反对 回复 2023-09-20
  • 1 回答
  • 0 关注
  • 48 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信