java - 需要对特定字段的 ArrayList<Object> 进行排序?

标签 java sorting arraylist

我需要根据 Student 对象中的日期对 ArrayList 进行排序...如果日期(加入日期)相同,那么我需要根据 ID 对其进行排序...该怎么做?

最佳答案

这可以通过两种常见的方式来完成。

简单的方法

1) 让学生提供 Comparable 的实现,最终将推迟到日期。这是一个非常简单的操作,但有点麻烦。

可维护的方式

2) 或者,Collections.sort 方法采用 Comparator 作为输入 - 您可以轻松编写一个自定义比较器,通过将输入转换为 Student 类并直接返回数据比较来实现排序所需的比较。

第二种解决方案更加模块化和可维护,除非按日期比较是应用程序的基本、核心方面。

关于java - 需要对特定字段的 ArrayList<Object> 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8620000/

相关文章:

java - 在字符串中找到一个 6 位数字

python - 为多个数组实现 numpy.in1d 的最有效方法

javascript - Backbone/Javascript 中按 24 小时制时间自定义排序

java - 为什么冒泡排序外循环在n-1处结束?

java - 将对象插入到 ArrayList 中的指定索引中

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

java - 不同数据类型的数学运算是否不同?

java - 如何检查一个整数是否在给定范围内?

java - 迭代存储在 ArrayList 中的 HashMap 中的值

java - 将 Arraylist<Integer> 转换为 char[] 的最佳方法是什么