当前位置: 首页 > 知识库问答 >
问题:

在Java中循环访问数组列表时,如何从它中删除某些内容?[副本]

孟和玉
2023-03-14
ArrayList<Integer> numbers = new ArrayList<Integer>();
[0,1,2,3,4,5]
for(int i=0; i<numbers.size();i++){
    if(numbers.get(i)>2){
    numbers.remove(i);
    }
}

我该怎么做?

共有1个答案

周超英
2023-03-14

您可以调用numbers.remove(i)然后递减i以跟随列表中位置的变化:numbers.remove(i);i--;

如果使用迭代器、foreach或:运算符,则不能删除值,因为它们使用不可修改的列表。

如果您有一种简单的方法来确定是否应该删除一个数字,那么可以使用numbers.removeif((number)->number>2)(与示例中的问题类似)。

 类似资料:
  • 我有一个表格,上面有多个大陆的数据。现在我想删除每一行不是欧洲或非洲的大陆。与: 我每一排都是“欧洲”,但我想念“非洲”。有没有办法包含“或”-运算符?这对我不起作用。

  • 问题内容: 我们使用ELK堆栈进行日志记录。我被要求设计一个流程,以解决如何删除意外记录的敏感信息。 现在,根据我对ElasticSearch(Lucene)如何处理删除和更新的了解,仍然无法使用索引中的数据。随着索引的合并,最终将被清理,等等。 是否有运行更新(删除内容)或删除(删除内容)并保证将其删除的过程? 问题答案: 当更新或删除某些值时,ES会将当前文档标记为已删除并为新文档建立索引。删

  • 问题内容: 我遍历对象数组,并希望基于其“ id”属性删除其中一个对象,但是我的代码无法正常工作。 有什么建议么。谢谢。 问题答案:

  • 我在一个CGdfs列表中有多个数据帧。 我想使用循环从所有这些数据帧中删除一个名为“情节”的列。我该怎么做呢? 我试过下面的方法,但不起作用

  • 问题内容: 我在面试中被问到以下问题:“如何检测链表中的循环?”,我解决了这个问题,但立即面试官问我如何删除链表中的循环。我摸索了 那么关于如何解决这个问题的任何指针,可能是伪代码还是方法定义? 我对Java很满意,因此已在Java下标记了这个问题。 对于实例,此链接列表具有循环 问题答案: 此问题有两个部分: 检测列表中是否存在循环 确定循环的开始 一旦知道了循环的开始位置,就很容易识别列表中的