Java Iterator
Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代ArrayList和HashSet等集合。
Iterator是Java迭代器最简单的实现,ListIterator是Collection API中的接口,它扩展了Iterator接口。
迭代器it
中几个基本操作是next
、hasNext
和remove
。
调用it.next()
会返回迭代器的下一个元素,并且更新迭代器的状态。
调用it.hasNext()
用于检测集合中是否还有元素。
调用it.remove()
将迭代器返回的元素删除。
Iterator类位于java.util包中
迭代元素
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
public class JavaDemo {
public static void main(String[] args) {
ArrayList<String> sites=new ArrayList<String>();
sites.add("Google");
sites.add("Runoob");
sites.add("Taobao");
// 获取迭代器
Iterator<String> it=sites.iterator();
// 输出集合中的第一个元素
System.out.println(it.next());
// 迭代输出全部元素
it=sites.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
删除元素
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
public class JavaDemo {
public static void main(String[] args) {
ArrayList<Integer> numbers = new ArrayList<Integer>();
numbers.add(12);
numbers.add(32);
numbers.add(2);
numbers.add(89);
System.out.println(numbers);
Iterator<Integer> it = numbers.iterator();
while (it.hasNext()) {
Integer i = it.next();
if (i < 10) {
it.remove(); //删除小于10的元素
}
}
System.out.println(numbers);
}
}