java集合删除元素
时间: 2023-11-16 07:00:58 浏览: 93
Java集合删除元素可以使用List的remove()方法,但是在使用普通for循环删除List里面的元素时会有bug,因为当删除一个元素时,List的长度会减1,被删除元素的后一个元素会向前移动,导致只删了一部分符合条件的元素。正确的做法是使用迭代器Iterator的remove()方法,或者使用增强for循环遍历List并使用List的removeIf()方法删除符合条件的元素。具体实现可以参考以下代码:
使用迭代器Iterator的remove()方法:
```
List<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
String s = iterator.next();
if ("张三".equals(s)) {
iterator.remove();
}
}
System.out.println("删除后:" + list);
```
使用增强for循环遍历List并使用List的removeIf()方法删除符合条件的元素:
```
List<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("赵六");
list.removeIf(s -> "张三".equals(s));
System.out.println("删除后:" + list);
```
阅读全文