java - 对复杂类型的 ArrayList 进行排序

标签 java sorting arraylist

我建立了一个耦合类:

public class Couple<E,K> {
    E first;    K second;

    Couple(E first, K second){
        this.first = first;
        this.second = second;
    }
    public E getFirst(){
        return first;
    }
    public K getSecond(){
        return second;
    }
}

还有一个ArrayList<Couple<String, Integer>>

ArrayList<Couple<URL, Integer>> a = ArrayList<Couple<URL, Integer>>();
a=fillArray();

我想按这对整数的第二个元素的值对“a”进行排序。

最佳答案

这样做

你的简单比较器

class SimpleComparator implements Comparator<Couple<URL, Integer>> {
    public int compare(Couple<URL, Integer> a, Couple<URL, Integer> b) {
        return a.second.compareTo(b.second); 
    }
}

您的排序

Collections.sort(a,new SimpleComparator()); // now a is sorted based on second value.       

关于java - 对复杂类型的 ArrayList 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20160275/

相关文章:

java - 新的 Spring Starter 项目 - pom 错误

java - NetBeans RCP - 如何在应用程序运行且可见时显示对话框

java - ArrayList removeAll() 不删除对象

java - 两个 Java 字符串在不相等时表示它们相等

java - 为什么Object.equals可以比较不能用引用相等运算符(==)比较的类型?

java - 返回破坏封装的 lambda 是否是糟糕的设计标志

xml - 用于 Linux 的开源命令行工具,用于区分忽略元素顺序的 XML 文件

javascript - 根据数组的长度对 json 进行排序

java - 两个对象具有相同的排序标准

java - Android 检查 Arraylist 是否包含另一个 Arraylist?