ListIterator迭代器

本文详细介绍了ListIterator接口的使用方法,包括如何通过ListIterator遍历List集合,并演示了next和previous等核心方法的功能,同时展示了如何利用ListIterator进行元素的修改。

ListIterator继承了Iterator接口,相比于Iterator功能更强大,不过ListIterator只能处理List类型集合

List<String> list = new ArrayList<>();
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");
        list.add("ddd");
        list.add("eee");
        ListIterator<String> lit = list.listIterator();

        while (lit.hasNext()){//hasNext() 迭代器还有元素返回true
            int a =lit.nextIndex();//获取下一个元素下标
            int b = lit.previousIndex();//获取前一个元素下标

            /**
             * next向下遍历 previous向上遍历 (向上遍历一个元素后再向下遍历,将会从当前位置继续向下遍历,eg:迭代器位置在list的“ccc” previous向前遍历一个元素到“bbb",那么再向下遍历事将会被从bbb开始
             */
            String str = lit.next();//获取下一个元素
            String str1 = lit.previous();//获取上一个元素 

//            lit.remove();//移除当前元素
//            lit.add("test");//在当前元素后面添加一个元素
            if ("bbb".equals(str)){
                lit.set("test");//给当前元素重新赋值
            }
        }
        lit = list.listIterator(0);//重新指定迭代器开始位置
        while (lit.hasNext()){
            System.out.println(lit.next());
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值