java - 如何按字段值对对象进行排序?

标签 java

如果我有一个列的数组列表,并且列的字段 disparityRating 是一个 int,我如何按 disparityRating 字段的值对列的数组列表进行排序?

我尝试在我的列类上实现可比较的接口(interface),但是当我这样做并将比较参数更改为列时,如下所示:

@Override
public int compareTo(Column o) {
    return 0;
}

出现错误,指出方法未覆盖其父类(super class)中的方法

我的主类有一个列数组列表

Collection<Column> columns = new ArrayList<>();

所以我希望能够使用

对它们进行排序
Collections.sort(columns);

最佳答案

添加“实现可比较”。

public class ... extends ... implements Comparable<Column> {

    @Override
    public int compareTo(Column o) {
       return Integer.compare(disparityRating, o.disparityRating);
    }
}

关于java - 如何按字段值对对象进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41004866/

相关文章:

java - 将Clojure的以vector为key的map转为java HashMap

java - 如何知道执行该类的用户有权更改系统时间?

java - 如何从通话记录中获取号码并使用它保存到对象 - Android

java - 如何使用 java 使用正则表达式替换特定的子字符串?

java - 如何在不创建字符串资源的情况下使用十进制数

java - 如何将 java 与 html 和 javascript 混合在一起?

java - 如何在 java 中为作为其他属性列表的属性编写 equals 和 hashCode 方法

java - 什么是NullPointerException,我该如何解决?

java - 正则表达式不匹配

java - 停止后续 JOptionPane 的排队