-2

我有一个清单1

我需要通过替代位置在列表 2 中更改它

例如

list2.add(list2 (from) 的第 0 个位置,list1 第 9 个位置值)

有没有可能

4

4 回答 4

0

尝试:

List list1 = //...
Collections.reverse(list1);

如果您需要维护第一个列表,请创建一个副本,然后反转该副本。

List list2 = new List(list1);
Collections.reverse(list2);
于 2013-06-28T13:45:32.840 回答
0

如果您想反转您的列表,您可以执行以下操作

    List<String> list1=new ArrayList<>();
    list1.add("a");
    list1.add("b");
    list1.add("c");
    list1.add("d");
    Collections.reverse(list1);
    System.out.println(list1);
于 2013-06-28T13:49:19.480 回答
0

你需要使用这个方法set(int i, E e)

 E aux = list2.set(index,list1.get(otherIndex));

aux是先前在指定位置的元素。

注意 aux 在 list2 中没有更多,它将被替换。

例子 :

        List<String> list1 = new ArrayList<>();
        List<String> list2 = new ArrayList<>();

        list1.add("a");
        list1.add("b");
        list1.add("c");

        list2.add("d");
        list2.add("e");
        list2.add("f");

        String aux = list1.set(0, list2.get(2));

        System.out.println(list1);
        System.out.println(aux); // aux is a now

输出将是:[f, b, c] a

于 2013-06-28T13:43:32.897 回答
0

假设您需要在第二个列表中以相反的顺序排列它

尝试

ArrayList<String> list1 = new ArrayList<String>();
    list1.add("1");
    list1.add("2");
    list1.add("3");
    list1.add("4");
    list1.add("5");
    list1.add("6");
    ArrayList<String> list2 = new ArrayList<String>();
    for(int i=list1.size()-1;i>-1;i--)
    {
        list2.add(list1.get(i));
    }
于 2013-06-28T13:53:25.170 回答