JAVA集合学习之Iterator(迭代器)

iterator方法用于返回一个实现了Iterator接口的对象,可以使用这个迭代器对象依次访问集合中的元素。
Java中的Iterator功能比较简单,并且只能单向移动:

  (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注意:iterator()方法是java.lang.Iterable接口,被Collection继承。

  (2) 使用next()获得序列中的下一个元素。

  (3) 使用hasNext()检查序列中是否还有元素。

  (4) 使用remove()将会删除上次调用next方法时返回的元素。(如果使用remove()之前没有使用next()将是不合法的,会抛出一个IllegalStateException异常。
  

简单应用

import java.awt.List;
import java.util.ArrayList;
import java.util.Iterator;

public class test1 {
    public static void main(String[] args) {
        ArrayList<Integer> l = new ArrayList<>();
        for(int i=0;i<10;i++) {
            l.add(i);
        }
        for(Iterator iter = l.iterator();iter.hasNext();) {
            int num = (int)iter.next();
            System.out.print(num+" ");
        }
        System.out.println();

        System.out.println("使用while循环");
        Iterator iter = l.iterator();
        Integer num1 = (Integer) iter.next();

        iter.remove();
        System.out.println(num1 + " ");

        Iterator iter1 = l.iterator();
         while(iter1.hasNext()) {
            Integer num2 = (Integer) iter1.next();
            System.out.print(num2 + " ");
        }

    }
}

猜你喜欢

转载自blog.csdn.net/lxl121181/article/details/80447977