Java根据多个下标剔除掉List中的多个元素
时间: 2023-12-14 14:38:07 浏览: 158
2.列表中删除多个元素
如果你想根据多个下标从List中剔除多个元素,可以使用Java 8中引入的removeIf()方法结合一个Predicate对象来实现。Predicate对象用于定义删除哪些元素的条件,具体实现如下:
```java
List<String> list = new ArrayList<>(Arrays.asList("a", "b", "c", "d", "e", "f"));
List<Integer> indicesToRemove = new ArrayList<>(Arrays.asList(1, 3, 5));
list.removeIf(element -> indicesToRemove.contains(list.indexOf(element)));
```
这里首先创建了一个包含6个元素的List,然后创建了另一个List,其中包含要删除的元素的下标。最后调用removeIf()方法,该方法会遍历List中的每个元素,并将满足Predicate对象条件的元素删除。
在本例中,Predicate对象使用了Lambda表达式来实现,其中indexOf()方法用于获取元素在List中的下标,contains()方法用于判断元素下标是否在要删除的下标列表中。这样,最终只有下标为1、3和5的元素被删除了。
阅读全文