Iterator接口
java.util.iterator接口(迭代器)
概述:对集合进行遍历,Iterator迭代器是一个接口,我们无法直接使用,需要使用Iterator接口的实现类对象。
获取实现类的方式比较特殊。
Collection接口中有一个方法,叫iterator(),这个方法返回的就是迭代器的实现类对象
Iterator<E> iterator() 返回在此 collection 的元素上进行迭代的迭代器。
有2个常用的方法;
1,boolean hasNext():如果仍有元素可以迭代,则返回true。
意思:判断集合中还有没有下一个元素,有就返回true,没有就返回false。
2,E next():返回迭代的下一个元素。
意思:取出集合中的下一个元素。
迭代器的使用步骤(重点):
1.使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
2.使用Iterator接口中的方法hasNext判断还有没有下一个元素
3.使用Iterator接口中的方法next取出集合中的下一个元素
1 import java.util.ArrayList; 2 import java.util.Collection; 3 import java.util.Iterator; 4 5 public class A09Iterator { 6 public static void main(String[] args) { 7 //创建一个集合 8 Collection<String> coll = new ArrayList<>(); 9 //往集合中添加元素 10 coll.add("姚明"); 11 coll.add("科比"); 12 coll.add("麦迪"); 13 coll.add("詹姆斯"); 14 coll.add("乔丹"); 15 16 /* 17 1,使用集合中的方法Iterator();获取迭代器的实现类对象,使用Iterator接口接收(多态); 18 注意: 19 Iterator<E>接口也是有泛型的, 迭代器的泛型跟着集合走,集合是什么泛型,迭代器也就是什么泛型。 20 */ 21 22 //创建迭代器 23 //1.使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态) 24 // 接口 + 实现类 = 多态 25 Iterator<String> it = coll.iterator(); 26 27 //推荐使用 28 while (it.hasNext()) { 29 String s = it.next(); 30 System.out.println(s); 31 } 32 33 /* 34 //了解使用(比较麻烦,不推荐使用) 35 for(Iterator<String> it2 = coll.iterator();it2.hasNext();){ 36 String next = it2.next(); 37 System.out.println(next); 38 39 }*/ 40 41 //检验一下集合中有没有元素 用hasNext。 42 //2.使用Iterator接口中的方法hasNext判断还有没有下一个元素 43 boolean b = it.hasNext(); 44 System.out.println(b);//true 45 46 //遍历一下集合 47 //3.使用Iterator接口中的方法next取出集合中的下一个元素 48 String s = it.next(); 49 System.out.println(s);//姚明 50 51 b = it.hasNext(); 52 s = it.next(); 53 System.out.println(s); 54 } 55 }

浙公网安备 33010602011771号