搜索
您的当前位置:首页迭代器:Iterator 与 ListIterator

迭代器:Iterator 与 ListIterator

来源:乌哈旅游

迭代器:用于遍历集合,从集合中取数据;
java中的迭代器说简单点就是为了计数用的,包括递归也是的,都是用于集合中的;

	ArrayList<Integer> list = new ArrayList<>();
    	list.add(1);
    	list.add(2);
    	list.add(3);
    	list.add(4);
    	list.add(5);
    /** java.util.Iterator<Integer> iterator = list.iterator();

	while (iterator.hasNext()){
        Integer i = iterator.next();
        System.out.println(i);
    }

    iterator.next();
    iterator.remove();
    System.out.println(list.size());
     */
    ListIterator<Integer> iterator = list.listIterator();
    //像数组内添加元素100
    iterator.add(100);
    //将指针向下移两格
    iterator.next();
    iterator.next();
    //指针移到指定位置后,设置值
    iterator.set(200);
    iterator.previous();
    //打印添加后的数组内元素
    System.out.println(list.size());
    //将指针向上移两格
    iterator.previous();
    iterator.previous();
    //打印列表的元素
    while (iterator.hasNext()){
        System.out.println(iterator.next());
    }
}

注意:

1. iterator比较通用,包括set和map方法中也可以,而ListIterator只能用于list集合中。

2..  当使用iterator时,操作增加的时候,因为iterator是单向的,查询的时候会从开始出查询,忽然之间你增加了一个改变了位置,它就不知道了;
而另一种方式ListIterator,nextIndex()方法和previousIndex()方法可以当前定位索引功能,再具体的位置后面进行添加。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top