本文介绍了基于多个属性对ArrayList进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个对象的ArrayList。该对象包含属性 date
和 value
。所以我想对日期
上的对象进行排序,对于同一日期的所有对象,我想在值$ c $上对它们进行排序C>。我该怎么做?
I have an ArrayList of object. The object contain attributes date
and value
. So I want to sort the objects on the date
, and for all objects in the same date I want to sort them on value
. How can I do that?
推荐答案
实现自定义,然后使用。它可能看起来像这样:
Implement a custom Comparator
, then use Collections.sort(List, Comparator)
. It will probably look something like this:
public class FooComparator implements Comparator<Foo> {
public int compare(Foo a, Foo b) {
int dateComparison = a.date.compareTo(b.date);
return dateComparison == 0 ? a.value.compareTo(b.value) : dateComparison;
}
}
Collections.sort(foos, new FooComparator());
这篇关于基于多个属性对ArrayList进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!