java - 根据数组列表的值对数组的内容进行排序

标签 java arrays eclipse arraylist

我有一个数组和一个数组列表:

String[] league = {"Leeds United","Liverpool","Chelsea","Manchester City","Stoke City"...
List<Integer> points = new ArrayList<Integer>();
points.add(7);
poinst.add(0);
points.add(5);
points.add(0);
points.add(5);

哪里:

利兹联 = 7

利物浦 = 0 等等...

我希望能够按数字降序对列表进行排序,但联赛数组应该反射(reflect)这种排序。

这可能吗?以及我该怎么做。 谢谢

最佳答案

在某处定义这个静态类:

private static final class Pair implements Comparable<Pair> {
    private final String name;
    private final int score;
    private Pair(String name, int score) {
        this.name = name;
        this.score = score;
    }

    @Override
    public int compareTo(Pair p2) {
        return Integer.compare(p2.score, score);
    }

    @Override
    public final String toString() {
        return "["+score+":"+name+"]";
    }
}

并从您的分数数据中填写配对列表并对其进行排序:

List<Pair> pairs = new ArrayList<>();
for(int i=0;i<league.length;++i)
    pairs.add(new Pair(league[i], points.get(i)));
Collections.sort(pairs);

System.out.println(pairs);

关于java - 根据数组列表的值对数组的内容进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27911260/

相关文章:

java - 如何生成随机数学运算符? ( eclipse )

java - 具有重复包结构的 Spring 3 组件扫描

javascript - Angular JS $http.get 返回数组,尝试将每个数组放入 $scope 中

java - 为什么导入 javax.servlet.*;尽管安装了 Java EE 仍无法解决 |面向 Java EE 开发人员的 Eclipse

java - 可执行 Jar 异常

Eclipse+Maven src/main/java 在 Package Explorer 的 src 文件夹中不可见

java - 登录系统 JSF - 识别出 SQLException?

java - JBoss 收缩包装

javascript - 对键为变量的对象数组进行排序

java - 如何在不使用 Set 的情况下有效地从数组中删除重复项