java - 对 ArrayList 中的对象中的变量进行排序

标签 java sorting arraylist

我有一个 ArrayList,里面有 3 个对象。对我来说,每个对象都是一本新书。每本书的标题、零售价、库存数量等都有不同的值。

如何比较和排序所有元素的零售价。我听说过

Collections.sort(books, new Comparator<BookInfo>(){
    @Override
    public int compare(BookInfo book1, BookInfo book2) {
        return book1.getTitle().compareTo(book2.getTitle());
    }
});

使用自定义比较器,但我无法对 double /整数使用 compareTo 方法。我将如何实现它,或者更改它以便我可以比较 double /整数?

最佳答案

你总是可以这样做

假设:价格值为双倍

   Collections.sort(books, new Comparator<BookInfo>(){

    @Override
    public int compare(BookInfo book1, BookInfo book2) {
        return book1.getPrice().compareTo(book2.getPrice());
    }
});

引用: How to sort an array of ints using a custom comparator?

关于java - 对 ArrayList 中的对象中的变量进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21868663/

相关文章:

java - 我可以使用 lambda 表达式来累加变量中的总和吗?

java - 将控制台结果写入文本文件

java - 为什么我会得到这个 ClassCastException?

Java 对象 [] 排序

java - 将最后一个元素的信息添加到 ArrayList 的末尾

java - 如何使用 Servlet 从服务器下载文件

java - 重写 getColumnClass 方法后,jTable 仍然错误地对数字进行排序

sorting - Groovy list.sort 按第一个,第二个然后第三个元素

java - 如何在jsp中显示3个数组列表?

java - 如何计算数组中的特定字符 - Java