Сортировка в Java

Эффективная сортировка в Java осуществляется с помощью внутренних средств. Рассмотрим сортировку коллекций в Java при помощи метода Collections.sort и интерфейса Comparator.

Создание класса Student в Java

Для начала напишем класс, из объектов которого, создадим коллекцию ArrayList. В последствии, на примере данной коллекции, покажем, как осуществляется сортировка в Java.

Класс Student содержит три поля: FIO – ФИО студента, group – название группы, в которой обучается студент, и averageMark – средний балл студента за семестр. В классе присутствуют геттеры и сеттеры для данных полей.

Также класс содержит метод println(), выводящий в консоль всю информацию о студенте.

Приведём код Java-класса Student:

Сортировка в Java с помощью Comparator

В методе main() главного класса приложения объявим коллекцию, которую впоследствии отсортируем:

Напишем метод, заполняющий коллекцию students:

Теперь самое интересное. Сортировка коллекций Java производится с помощью метода Collections.sort(Коллекция, Comparator). Где Comparator – реализация одноименного интерфейса. Пример Java Comparator вы найдете чуть ниже.

Comparator (компаратор, “сравниватель”) необходим для того, чтобы указать в нём признак, по которому метод sort будет сравнивать элементы коллекции. Сейчас мы приведем реализацию Comparator в Java, а потом поясним её подробнее.

В Компараторе вы описываете, как сравнить два объекта класса с помощью условного оператора if. При этом, если первый объект o1 меньше объекта o2, то необходимо возвратить отрицательное целое число с помощью оператора return. Если o1 по нужному признаку больше, чем o2, то надо вернуть положительное целое число. Если o1 равен o2, то необходимо возвратить ноль.

Сортировка в Java демонстрируется ниже:

Сортировка в Java - сортировка коллекции и пример Comparator

Если необходимо отсортировать коллекцию в Java в обратном порядке, то воспользуйтесь оператором:

Скачать исходник программы из данного урока программирования, написанный на Java в NetBeans IDE, можно по ссылке:

Скачать исходник

 

 

Материалы по теме:

Сортировка в Java
5 (100%) 5 votes

Поделиться в соц. сетях:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">