Java list foreach 修改元素

在使用foreach遍历list时候,可以修改元素,但是不能替换list中的元素,示例如下:

        List oList = new ArrayList();
        for (int i = 0; i < 10; i++) {
            oList.add(new O());
        }
        for (O o : oList) {
            o.setI(2);
        }
        System.out.println(oList);
        for (O o : oList) {
            o = new O();
        }
        System.out.println(oList);

输出:

[O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2]]
[O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2], O [i=2]]

你可能感兴趣的:(Java语言)