迭代器遍历

Collection集合中Set集合是没有索引的,所以无法采用for循环进行遍历。

 特别的:

在遍历的过程中需要删除元素,需使用迭代器

仅仅遍历,使用增强for或者lambda

迭代器遍历是一种适用于Collection通用的遍历方法。

1、创建迭代器对象,会自动指向0索引位置

2、利用.hasNext()方法判断指向的位置是否有元素,作为while循环条件

通过.next()方法来获取该指针指向的元素同时将指针后移

public static void main(String[] args) {
        /*
        Interator iterator() 获取一个迭代器对象
        boolean hasNext() 判断当前指向位置是否有元素
        E next() 获取当前指向元素并移动指针
         */


        /*
        迭代器的注意事项

       1、指针指向外部仍读取,会报出异常NoSuchElementException
       2、迭代器遍历完毕,指针不回复位
       3、循环中只能用一次next方法
       4、迭代器遍历的时候不能用集合的方法进行增加或者删除
         */


        //1、创建集合并添加元素
        Collection coll = new ArrayList<>();
        coll.add("aaa");
        coll.add("bbb");
        coll.add("ccc");

        //2、获取迭代器对象
        //迭代器好像一个箭头,默认指向集合的0索引处
        Iterator it = coll.iterator();

        //3、不断的获取集合中的每一个元素
        while (it.hasNext()){//返回boolean类型,找到true,没找到false
            //4、next方法的两件事情,获取元素并且移动指针
            String str=it.next();
            System.out.println(str);
        }
    }

你可能感兴趣的:(java,c++,java,算法)