面试官问:现在给你几十万条数据存在ArrayList 中,从中删除叫李华的人;你如何操作做?
答:使用迭代器
Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。
根据 ArrayList创建的对象sites
// 获取迭代器 Iterator it = sites.iterator();
ArrayList<String> sites = new ArrayList<String>();
// 获取迭代器
Iterator<String> it = sites.iterator();
while(it.hasNext()) {
String i = it.next();
if( i.equals("李华")) {
it.remove(); // 删除该元素
}
}
迭代器方法
- 调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。
- 调用 it.hasNext() 用于检测集合中是否还有元素。
- 调用 it.remove() 将迭代器返回的元素删除。