在java中重新安排arrayList

时间:2017-03-03 09:15:07

标签: java arraylist collections

我有一个自定义的ArrayList。我需要针对整数Array以特定顺序重新排列此ArrayList。 E.g

List<String> test = new ArrayList();        
    test.add("red");
    test.add("green");
    test.add("blue");
int [] X = {2,0,1};

重新安排这个arrayList w.r.t X数组。即第2指数的项目应该是第1,第0项到第2位,第1项到第3位

输出应为:

blue
red
green

我知道如何使用for循环只想知道是否有更好的解决方案。

2 个答案:

答案 0 :(得分:0)

您可以创建一个Map并将整数映射到String Value。

迭代引用数组并根据您的订单列出它。

段:

Map<Integer,String> maps = new HashMap<Integer,String>();
maps.put(1,"Red");
maps.put(2,"White");

for(Integer a : values){
   System.out.println(maps.get(a));
}

答案 1 :(得分:-1)

您可以使用

Collections.swap(test,1,2);
Collections.swap(test,2,3);

文档Here