改写下面代码使用for循环public void deletePerson(String name) { for (Iterator<Person> iter = persons.iterator(); iter.hasNext();) { Person p = iter.next(); if (p.getName().equals(name)) { iter.remove(); } } }
时间: 2024-02-03 16:03:48 浏览: 84
ES6 Iterator接口和for...of循环用法分析
你可以把代码改成如下形式,使用 for 循环来遍历 persons 集合:
```
public void deletePerson(String name) {
for (int i = 0; i < persons.size(); i++) {
Person p = persons.get(i);
if (p.getName().equals(name)) {
persons.remove(i);
i--;
}
}
}
```
需要注意的是,当从集合中删除元素时,需要将索引 i 减 1,以便下次循环时不会跳过一个元素。
阅读全文