首页 > 其他 > 详细

Iterator迭代器

时间:2020-01-07 23:34:24      阅读:96      评论:0      收藏:0      [点我收藏+]
集合的继承关系:

技术分享图片

Iterator迭代器是一个接口,无法直接使用,需要使用Iterator接口的实现类对象,获取该类的方法比较特殊
package Exercise;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/**
 * 2020/1/7
 * java.util.Iterator接口:迭代器(对集合元素进行遍历)
 * E next 取出集合中的下一个元素
 * boolean hasNext()判断集合中还有没有下一个元素
 * Iterator迭代器是一个接口,无法直接使用,需要使用Iterator接口的实现类对象,获取该类的方法比较特殊
 * Collection接口中有一个方法叫iterator(),返回的就是迭代器的实现类对象Iterator<E>  iterator
 *
 *   迭代器的使用步骤:
 *   1.使用集合中的方法iterator()获取迭代器的实现类对象,使用iterator接口接收(多态)
 *   2.hasNext()方法判断
 *   3.next()方法取出集合中的下一个元素
 */
public class IteratorExample {
    public static void main(String[] args) {
        Collection<String> col=new ArrayList<>();
        col.add("zhang");
        col.add("zhao");
        col.add("wang");
        col.add("li");
        col.add("hui");
        //多态的具体应用:基类引用,引用不同的派生类对象  public interface Collection<E> extends Iterable<E>
        // 1.使用集合中的方法iterator()获取迭代器的实现类对象,使用iterator接口接收(多态)
        //接口                     实现类对象
        Iterator<String> iter = col.iterator();
//        boolean b=iter.hasNext();
//        System.out.println(b);
//        String s=iter.next();
//        System.out.println(s);//zhang
        //2.hasNext()方法判断
        //3.next()方法取出集合中的下一个元素
        while(iter.hasNext()){
            System.out.println(iter.next());
        }
    }
}
zhang
zhao
wang
li
hui

具体函数分析:

技术分享图片

foreach循环遍历集合数组:

 Collection<String> col=new ArrayList<>();
        col.add("zhang");
        col.add("zhao");
        col.add("wang");
        col.add("li");
        col.add("hui");
        for(String s:col){  //s相当于下标
            System.out.println(s);
        }

Iterator迭代器

原文:https://www.cnblogs.com/laurarararararara/p/12163586.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!