Iterator 方法 remove()、 hasNext()、next()

调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。
调用 it.hasNext() 用于检测集合中是否还有元素。
调用 it.remove() 将迭代器返回的元素删除

注意:remove对象是否存在,如果这个对象已被remove,再次remove会出现此异常Java.lang.IllegalStateException异常

        People people1 = new People(1, "Ligs", true);
        People people2 = new People(2, "Songzx", false);
        People people3 = new People(3, "Jinzg", true);
        People people4 = new People(4, "Liuzx", false);
        People people5 = new People(5, "Hedx", true);
        People people6 = new People(6, "Quansm", false);
        People people7 = new People(7, "Liangsz", true);
        People people8 = new People(8, "Chisz", true);
        ArrayList<People> list = new ArrayList<People>() {{
            add(people1);
            add(people2);
            add(people3);
            add(people4);
            add(people5);
            add(people6);
            add(people7);
            add(people8);
        }};

        Iterator<People> iterator = list.iterator();
        while (iterator.hasNext()) {
            People next = iterator.next();
            if (next.getId()==3) {
                iterator.remove();
            }
        }

        for (People p : list) {
            System.out.println(p);
        }

输出结果

People{id=1, name='Ligs', sex=true}
People{id=2, name='Songzx', sex=false}
People{id=4, name='Liuzx', sex=false}
People{id=5, name='Hedx', sex=true}
People{id=6, name='Quansm', sex=false}
People{id=7, name='Liangsz', sex=true}
People{id=8, name='Chisz', sex=true}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值