Hyp*_*ant 5 java sorting arraylist object
我有一个对象的数组列表
数组列表中的对象是大学的信息,称为"ModuleInfo"(课程,作业,dateDue)
dateDue已被格式化为整数YYYYMMDD(来自日历)
我已经看过人们做过这些事情的其他一些方法,但我无法理解我需要做的事情.
理想情况下,因为我已经在创建数组列表时已经声明它将包含'ModuleInfo'对象,我可以只使用Collection.sort(moduleDB,ModuleInfo.getDateDue)或其他类似的东西.moduleDB是数组列表
任何帮助将非常感激.
如果要用于Collections.sort(List list)对列表进行排序,则对象必须实现该Comparable接口.
public class ModuleInfo implements Comparable<ModuleInfo> {
/* Your implementation */
public int compareTo(ModuleInfo info) {
if (this.dateDue < info.dateDue) {
return -1;
} else if (this.dateDue > info.dateDue) {
return 1;
} else {
return 0;
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后调用Collections.sort(moduleDB)哪里moduleDB有类型ArrayList<ModuleInfo>.
ps如前一篇文章所述,您也可以让您的类实现Comparator接口以获得相同的结果.