Java迭代器升级版探究(3)

public static void main(String[] args) {
    Collection c = new ArrayList();
    c.add(new String("aaa"));
    c.add(new String("bbb"));
    c.add(new String("ccc"));
    c.add(new String("ddd"));
    c.add(new String("fff"));
    c.add(new String("eee"));

for (Object o : c) {
//      System.out.print(o + " ");
        if (o.equals("fff")) {
            c.remove(o);
        }
    }
    System.out.println(c);
}

当我们运行这段程序,你将会发现 ”fff“ 这个字符串对象怎么被成功删除了?!这也是我之前一直疑惑且略显白痴的地方。其实,我可以下定结论:在通过迭代器进行迭代时,容器对象里的倒数第二个元素一定可以过容器类所提供的 remove() 方法进行删除操作(不管这个容器的 size 有多大)。这又是为什么呢?哈哈,对于这个问题,留待小伙伴们自行解决吧^_^!

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2982304e015e1ae0cf46783c1988217e.html