A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© jaunce 中级黑马   /  2015-8-29 07:37  /  168 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public interface Iterator
{
        public abstract boolean hasNext();
        public abstract Object next();
}


public interface Collection
{
        public abstract Iterator iterator();
}
public interface List extends Collection
{
        ...
}
public class ArrayList implements List
{
        public Iterator iterator() {
        return new Itr();
    }   
    private class Itr implements Iterator {
        public boolean hasNext() {
            return xxx;;
        }
        public E next() {
            return xxx;
        }
    }
}



用法:
        //多态
        Collection c = new ArrayList();
        //添加元素
        c.add("hello");
        c.add("world");
        c.add("java);        
        Iterator it = c.iterator(); //把Itr返回来了,而Itr实现了Iterator接口。所以,这是多态的体现。
        while(it.hasNext())
        {
                String s = it.next();
                System.out.println(s);
        }






1 个回复

正序浏览
list 用下标不是更简单么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马