Сортировка объектов по алфавиту

215
27 декабря 2017, 20:53

Как отсортировать объекты по инициалам? Т.е когда я буду заполнять массив объектов, хочу чтобы они выводились не в порядке заполнения, а по алфавитному порядку инициалов) Если заполню вот так

Workers {initials = 'Я', position = 'блабла', year = 2017}
Workers {initials = 'А', position = 'блабла', year = 2017}

А должно выводить

Workers {initials = 'А', position = 'блабла', year = 2017}
Workers {initials = 'Я', position = 'блабла', year = 2017}

Заранее спасибо)

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Worker[] workers = new Worker[2];
String initials, position;
int year = 0;
System.out.print("Заполните информацию про рабочих." +
            "\n" + "Введите : ФИО , должность , " +
            "год поступления на работу v" + "\n" + "Вводите: ");
//Ввод данных
for (int i = 0; i < workers.length; i++) {
    workers[i] = new Worker(initials = reader.readLine(), position = reader.readLine(), year = Integer.parseInt(reader.readLine()));
}
//Вывод массива
for (Worker worker : workers) {
    System.out.println(worker.toString());
}
Answer 1

Есть два варианта - либо сделать класс Worker сравнимым по инициалам

public class Worker implements Comparable<Worker> {
    ...
    public int compareTo(Worker worker) {
        return getInitials().compareTo(worker.getInitials());
    }
}

либо использовать для сортировки Comparator

Comparator<Worker> workerInitialsComparator
  = Comparator.comparing(Worker::getInitials);
Arrays.sort(workers, workerInitialsComparator);
READ ALSO
Проблема с Android sdk

Проблема с Android sdk

Уже несколько раз устанавливал Android Studio, но не могу понять в чем проблемаВ окне, где должны быть обозначены компоненты нет необходимого мне...

179
Именованные сущности

Именованные сущности

Доброго времени суток! Передо мной была поставлена задача,которая звучит так:

188
Java и JSON проблема с парсингом [требует правки]

Java и JSON проблема с парсингом [требует правки]

Есть объект, не получается достать от туда gameId, с помощью JSONObject и JSONArray, заранее спасибо за помощь!

189
Как реализовать сохранение состояния &lt;p:selectOneMenu&gt; в БД?

Как реализовать сохранение состояния <p:selectOneMenu> в БД?

Есть 2 таблицы GPERSONS и R_USERСтолбец G_PERSONS

215