Страницы

Поиск по вопросам

пятница, 2 ноября 2018 г.

Как сортировать ArrayList с объектами за двумя параметрами

Есть класс Employee в котором есть ArrayList, нужно отсортировать сотрудников в списке по ЗП, а если ЗП одинаковая за именем. Как отсортировать по ЗП я знаю, а вот как отсортировать при равной ЗП за именем не могу понять. Заранее спасибо. Можете дать хотя бы подсказку .


Ответ

Предположим, имеем класс
class Employee { String name; double salary; }
и переменную
ArrayList employees;
Сортировать можно, например, следующим способом:
Collections.sort( employees, new Comparator() { public int compare(final Employee e1, final Employee e2) { if (e1.salary < e2.salary) return -1; if (e2.salary > e2.salary) return 1; return e1.name.compareTo(e2.name); } } );

Комментариев нет:

Отправить комментарий