删除集合中的某个元素
时间: 2024-06-10 08:04:05 浏览: 12
对于删除集合中的某个元素,可以使用以下几种方法:
1. 利用Iterator自带的remove方法进行删除。通过迭代器遍历集合,当找到要删除的元素时,使用迭代器的remove方法进行删除。这种方法可以避免并发修改异常。
2. 使用for循环倒序删除。从集合的最后一个元素开始遍历,当找到要删除的元素时,使用集合的remove方法进行删除。这种方法可以保证删除的元素不会影响后续元素的索引。
3. 使用Lambda表达式删除。使用流的forEach方法遍历集合,当找到要删除的元素时,将其添加到一个新的集合中,然后使用集合的removeAll方法将新集合中的元素全部从原集合中删除。
以下是示例代码:
```
// 方法一:利用Iterator自带的remove方法进行删除
public static void iterator(ArrayList<Long> list) {
Iterator<Long> it = list.iterator();
while (it.hasNext()) {
Long a = it.next();
if (a == 3) {
it.remove();
}
}
System.out.println(list);
}
// 方法二:for循环倒序删除
public static void backDel(ArrayList<Long> list) {
for (int i = list.size() - 1; i >= 0; i--) {
if (list.get(i) == 3) {
list.remove(i);
}
}
System.out.println(list);
}
// 方法三:Lambda表达式删除
public static void lambda(ArrayList<Long> list) {
ArrayList<Long> delList = new ArrayList<>();
list.stream().forEach(vo -> {
if (vo == 3) {
delList.add(vo);
}
});
list.removeAll(delList);
System.out.println(list);
}
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)