如何在Java中复制对象

时间:2017-01-23 16:35:40

标签: java

我正在制作我自己的那种思考,它实现了Comparable接口。算法看起来很好,但我想是Comparable a = list.get(i);是一个链接,但我需要这个对象的副本。我不能使用list.get(i).copy(),因为它对于Comparable来说是未定义的。

private static void sortIncrease(ArrayList<Comparable> list) {
    int i, j;

    for (i = 1; i < list.size(); i++) {
        Comparable a = list.get(i);

        for (j = i - 1 ; j >= 0 ; j = j - 1) {
            int cmpResult = a.compareTo(list.get(j));

            if (cmpResult < 0) {
                list.set(j + 1, list.get(j));
            } else {
                list.set(j+1, a);
                break;
            }
        }
    }       
}

1 个答案:

答案 0 :(得分:-1)

我可以建议你一个不好的方式&#34;要做到这一点,创建自己的克隆方法。 你可以:

- 将另一个Comparable的参数作为输入,并将它们克隆到您的对象中

- 创建一个提供参数的方法,稍后将其插入构造函数中。