Java 交换列表的元素

Java 交换列表的元素,java,Java,我有一个对象列表,我想在列表上做一些操作,这样一个特定的对象应该被移动到列表位置0,位置0的对象将发生在移动的对象上。该图如下图所示 名单如下 final List<Object> list= new ArrayList<Object>(); 如何在冗余且有效的步骤中执行相同的逻辑,而不是使用临时列表。使用此方法: Collections.swap(列表,inti,intj); 尝试以下代码: Object temp = list.get(0); list.set(0

我有一个对象列表,我想在列表上做一些操作,这样一个特定的对象应该被移动到列表位置0,位置0的对象将发生在移动的对象上。该图如下图所示

名单如下

final List<Object> list= new ArrayList<Object>();
如何在冗余且有效的步骤中执行相同的逻辑,而不是使用临时列表。

使用此方法:

Collections.swap(列表,inti,intj);
尝试以下代码:

Object temp = list.get(0);
list.set(0, list.get(3));
list.set(3, temp);

以前是否创建了数组的整个副本?如果查看Collections类中的swap方法,它也会执行相同的操作。temp对象不是必需的,您可以将其表示为一行:
list.set(0,list.set(3,list.get(0))。set方法返回旧值,这有助于进行交换。。。
for (int i = 0; i < 5; i++) {

                if (i==3) {

                    temp1.add(i);

                } else {
                    temp2.add(i);
                }
            }
list.addAll(temp1);
            list.addAll(temp2);
Collections.swap(List<?> list, int i, int j);
Object temp = list.get(0);
list.set(0, list.get(3));
list.set(3, temp);