首页 > 解决方案 > Android Java - 我需要根据另一个列表对列表进行排序

问题描述

一份动物列表:(未分类)例如 [“Lion”、“Tiger”、“Cat”、“Dog”、“Cuy”]

另一个列表animals_select:例如[“Cuy”,“Cat”]

我正在尝试根据第二个列表的值对动物列表进行排序。

代码:

List<String> animals = new ArrayList<>();

// Adding new elements to the ArrayList
animals.add("Lion");
animals.add("Tiger");
animals.add("Cat");
animals.add("Dog");
animals.add("Cuy");

System.out.println(animals);

//["Lion","Tiger","Cat", "Dog"]

List<String> animals_select = new ArrayList<>();
animals_select.add("Cat");
animals_select.add("Cuy");

我想得到一个这样的列表 [“Cuy”,“Cat”,“Lion”,“Tiger”,“Dog”]

第二个列表中的那些应该首先排序

我试过没有成功

Collections.sort(animals, new Comparator() {
                    public int compare(left, right) {
                        return Integer.compare(animals_select.indexOf(left), animals_select.indexOf(right));
                    }
                });

标签: javaandroidlistsorting

解决方案


推荐阅读