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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© forjunjian 中级黑马   /  2015-8-27 23:46  /  695 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

毕向东的视频里说,List里面有个iterator内部类的实现,从而可以使用迭代器。咋ArrayList 用内部类呢,我觉得iterator(){

  return new iterator;
}


俺看也行,用的着非要用内部类?

1 个回复

倒序浏览
package Array1;

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

public class ArrayTest {
        public static void main(String[] args) {
                //创建集合对象
                ArrayList<String> l = new ArrayList<String>();
               
                //添加集合元素
                l.add("hello");
                l.add("world");
                l.add("java");
                l.add("hello");
                l.add(".net");
                l.add("java");
                l.add("php");
                l.add("ios");
                l.add("java");
                l.add("android");
                l.add("world");
               
                //用迭代器来实现
                Iterator<String> it = l.iterator();
               
                //创建新集合
                ArrayList<String> newl = new ArrayList<String>();
               
                //while循环来遍历集合 l 去除重复,然后添加到新集合 newl 中
                while (it.hasNext()) {
                        String s = (String)it.next();
                        if (! newl.contains(s)) {
                                newl.add(s);                               
                        }
                       
                }
                //输出两个集合对象,查看使用迭代器效果。
                System.out.println(l);
                System.out.println(newl);
        }

}
---------------------------------------------------------------------
最后的打印结果为:
[hello, world, java, hello, .net, java, php, ios, java, android, world]
[hello, world, java, .net, php, ios, android]
(这就是迭代器的使用,希望能帮到你。)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马