对象的arraylist的深层复制

时间:2014-02-22 02:20:36

标签: java

我正在尝试深度复制全局arraylist中的对象列表,并返回我的返回函数中的所有对象,如下所示

ArrayList<Objects> list = new ArrayList<Objects>();

public Objects copy() {
        Objects copied = new Objects();
        ArrayList<Objects > newList = new ArrayList<Objects>();
        for(Objects  objs : list){
            newList.add(objs);
        }
        for(int i=0; i<newList.size(); i++ ){
            copied = newList.get(i);
        }
        return copied;
    }

但是这个函数只返回列表中的最后一个元素。如何使函数返回所有值?例如,如果全局列表中有3个对象,则我的函数应返回所有3个值。

此外,我不希望我的函数返回类型为ArrayList<Objects>,即我不想返回对象的ArrayList

这可能吗?如果是这样,我错过了什么?

1 个答案:

答案 0 :(得分:1)

为什么不使用Apache Commons Lang SerializationUtils clone()?