Collection集合,Iterator接口,Iterable<T>接口,for循环增强。

 1:List接口有下标,Set接口没有下标(一个不包含重复元素的Collection)。

Collection接口的基本方法:

    

 Iterator迭代器:  

    Collection集合元素的通用获取方式:在取元素之前先要判断集合中有没有元素,如果有,就把这个元素取出来,继续在判断,如果还有就再取出出来。一直把集合中的所有元素全部取出。这种取出方式专业术语称为迭代。

    集合中把这种取元素的方式描述在Iterator接口中。Iterator接口的常用方法如下:

      

      hasNext()方法:用来判断集合中是否有下一个元素可以迭代。如果返回true,说明可以迭代。

      next()方法:用来返回迭代的下一个元素,并把指针向后移动一位。

      注意事项:当用迭代器遍历元素时,不可以进行增删操作,因为集合的下标用了迭代器则不可以改变,可以理解为一个指针指向哪一个元素,就取出哪一个元素,不可以往回找,同时next()方法执行一次,就会取出一个元素,在执行只会往下取,而不会往前取。

      

        .iterator()这个方法属于iterable类,这个方法返回的是Iterator<T>迭代器,同时它是Collection的接口,所以需要进行向下转型来获取对象。Iterator<String> it = coll.iterator();

并且需要明确Iterator的泛型。

方法摘要
 Iterator<T> iterator()
          返回一个在一组 T 类型的元素上进行迭代的迭代器。


 增强for循环代码体现:

        Collection<Person2> coll=new ArrayList<Person2>();
        coll.add(new Person2("lisi",33));
        coll.add(new Person2("zhagnsan",35));
        coll.add(new Person2("huangzhong",43));
        Iterator it=coll.iterator();
        for(Person2 d:coll){
           System.out.println(d);
        }

    格式:for(元素类型   变量名:集合名字){

      system.out.println(变量名);

      }

原文地址:https://www.cnblogs.com/maxuefeng/p/13803636.html