У меня есть класс с несколькими свойствами. Я хочу, чтобы он отсортировался. В настоящее время я сортировка по Name
так:Сортировка коллекции по двум различным свойствам
Collections.sort(rowItems, new Comparator() {
public int compare(Object o1, Object o2) {
SearchRowItem p1 = (SearchRowItem) o1;
SearchRowItem p2 = (SearchRowItem) o2;
return p1.getName().compareToIgnoreCase(p2.getName());
}
});
Но я также хочу, чтобы сортировать LastName
вторично к Name
(так что если имена совпадают сортировать по LastName
вторым). Как мне совместить мой код ниже с моим первым видом, чтобы получить результат, который я описал?
Collections.sort(rowItems, new Comparator() {
public int compare(Object o1, Object o2) {
SearchRowItem p1 = (SearchRowItem) o1;
SearchRowItem p2 = (SearchRowItem) o2;
return p1.getLastName().compareToIgnoreCase(p2.getLastName());
}
});
Благодарим вас за такой подробный ответ, это помогло мне реально понять сортировку. – BluGeni
Рад, что я мог бы помочь! – wassgren