码迷,mamicode.com
首页 > 其他好文 > 详细

迭代器

时间:2020-11-08 17:31:21      阅读:25      评论:0      收藏:0      [点我收藏+]

标签:模拟   没有   小明   添加   增强for循环   str   code   iter   OLE   

* 迭代器 Iterator 常用的api方法 * boolean hasNext?() 如果迭代具有更多元素,则返回 true 。 * E next?() 返回迭代中的下一个元素。 * void remove?() 从底层集合中删除此迭代器返回的最后一个元素(可选操作)。 * 想要遍历容器获取容器中的每一个元素,而容器中没有索引,java提供了迭代器操作 * 来访问容器中的每一个元素 * 迭代: * 在去元素之前先要判断集合中是否有该元素,如果有就把这个元素取出来,继续判断 * 如果还有就再次取出来,一直把集合中的所有元素全部取出来,这种取出方式专业术 * 语有称为”迭代“

练习:

      public static void main(String[] args) {
        //模拟场景
        Collection<String> coll = new ArrayList<>();
        coll.add("小明");
        coll.add("小蓝");
        coll.add("小兰");
        coll.add("小红");
        coll.add("小黑");
        coll.add("小思");
        coll.add("小非");
        //对于Collection集合容器没有索引只能通过迭代器来访问
        Iterator<String> inerator = coll.iterator();
//        //取第一个元素
//        String str1 = inerator.next();
//        System.out.println("str1 = " + str1);
//        //去第二个元素
//        String str2 = inerator.next();
//        System.out.println("str2 = " + str2);
//        //删除该元素
//        inerator.remove();
//        String str3 = inerator.next();
//        System.out.println("str3 = " + str3);
//        //删除该元素
//        inerator.remove();
//        //查看
//        System.out.println(coll.toString());

        //可以使用循环来迭代取出容器中的元素
        //hasNext() ---》 判读是否有下一个元素
        while (inerator.hasNext()){//循环条件
            String next = inerator.next();
            System.out.print(next+" ");
        }
        System.out.println();
    /*  增强for循环 原理就是迭代原理
        JDK 1.5 新特性 高级for循环
        格式:
                for (元素数据类型 变量 : Collection集合或者数组) {
                    //操作 代码
                   }
        备注:在迭代的过程中,不要对集合进行删除路和添加的操作
        */
        for (String s : coll) {
            System.out.print(s+",");
        }

    }

迭代器

标签:模拟   没有   小明   添加   增强for循环   str   code   iter   OLE   

原文地址:https://blog.51cto.com/14954368/2547632

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!