Что вам нужно сделать, это реализовать пользовательский Comparator
. А затем используйте:
Collections.sort(yourList, new CustomComparator<YourClass>());
В частности, вы могли бы написать: (Это создаст класс Anonymous, который реализует Comparator
.)
Collections.sort(yourList, new Comparator<YourClass>(){
public int compare(YourClass one, YourClass two) {
// compare using whichever properties of ListType you need
}
});
Вы можете встроить их в свой класс, если хотите:
class YourClass {
static Comparator<YourClass> getAttribute1Comparator() {
return new Comparator<YourClass>() {
// compare using attribute 1
};
}
static Comparator<YourClass> getAttribute2Comparator() {
return new Comparator<YourClass>() {
// compare using attribute 2
};
}
}
Можно использовать так:
Collections.sort(yourList, YourClass.getAttribute2Comparator());