list的remove
时间: 2023-09-04 08:13:58 浏览: 76
list用remove实现结构体成员的删除
list的remove方法用于从列表中移除指定的元素。可以通过两种方式来使用remove方法:
1. 使用迭代器的remove方法:在遍历列表时,如果需要移除某个元素,应该使用迭代器的remove方法而不是直接使用列表的remove方法。这是因为直接使用列表的remove方法可能会导致并发修改异常(ConcurrentModificationException)的发生。使用迭代器的remove方法可以安全地从列表中移除元素,示例代码如下:
```
List<String> nameList = new ArrayList<>(Arrays.asList("张三", "李四", "王五", "赵六"));
Iterator<String> iterator = nameList.iterator();
while (iterator.hasNext()) {
String name = iterator.next();
if (name.startsWith("张")) {
iterator.remove();
}
}
```
2. 使用列表的remove方法:如果不涉及并发修改的情况,也可以直接使用列表的remove方法来移除元素。该方法会遍历列表,找到与指定元素相等的元素并将其移除,之后的元素会依次前移。如果列表中不存在与指定元素相等的元素,则返回false。示例代码如下:
```
List<String> nameList = new ArrayList<>(Arrays.asList("张三", "李四", "王五", "赵六"));
boolean removed = nameList.remove("张三");
```
需要注意的是,使用列表的remove方法时,如果列表中存在多个与指定元素相等的元素,只会移除第一个遇到的元素。如果需要移除所有与指定元素相等的元素,可以使用循环来多次调用remove方法。
阅读全文