不同集合元素的存入和取出方式可能不同,使用迭代器可以对所有集合进行遍历:
Iterator是一个接口,无法直接使用,Collection接口中定义了生成iterator实现类对象的成员方法,故迭代器一般是由要遍历的集合创建的:
// 使用多态创建一个Collection集合
Collection<String> coll = new ArrayList<>();
// 使用集合的iterator方法创建迭代器
Iterator<String> it = coll.iterator();
迭代器中有两种实用方法:
1.boolean hasNext(); 判断集合中是否还有元素
2.E next(); 取出集合中的下一个元素
// 向集合中添加元素
coll.add("aaa");
coll.add("bbb");
coll.add("ccc");
// 使用迭代器进行遍历
while(coll.hasNext()) {
System.out.print(coll.next()); // aaabbbccc
}
但遍历集合一般不直接用迭代器,而是用具有迭代器原理的加强for循环:
格式: for (泛型 变量名 :集合名) {
System.out.println(变量名);
}
// 使用加强for循环遍历集合
for(String str : coll) {
System.out.print(str); // aaabbbccc
}