java - 从 ArrayList 中删除多个元素

标签 java arraylist

我有一堆索引,我想从 ArrayList 中删除这些索引处的元素。我不能做一个简单的 remove() 序列,因为每次删除后元素都会移动。我该如何解决?

最佳答案

要删除 indexes 处的元素:

Collections.sort(indexes, Collections.reverseOrder());
for (int i : indexes)
    strs.remove(i);

或者,使用 Java 8 中的 Stream API:

indexes.sort(Comparator.reverseOrder());
indexes.stream().mapToInt(i -> i).forEach(l::remove);

关于java - 从 ArrayList 中删除多个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4950678/

相关文章:

java - cxf webclient - 异常[请求处理失败;嵌套异常是 Status : 406

java - 用于在 android 中存储 arraylist 的共享首选项

java - 如何在ArrayList中设置值

android - 如何对 arraylist HashMap 进行排序

android - AsynckTask.onPostExecute 和 FragmentActivity.onResumeFragments 是否在同一线程(ui 线程)上运行?

java - 我如何找出 JVM 忽略 linux 上的 kill -15 (SIGTERM) 的原因?

java - 为 Liferay 开发 portlet 的限制/缺点

java - swt.jar 在哪里?

java - 使用 Springboot+JUnit 测试启动器

java - 如何迭代 ArrayList 中作为节点值的数组?