English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной учебник Java

Java Управление потоком

Java Массивы

Java Ориентированность на объекты (I)

Java Ориентированность на объекты (II)

Java Ориентированность на объекты (III)

Обработка исключений Java

Java List

Java Queue (очередь)

Java Map

Java Set

Java Ввод/Вывод (I/O)

Java Reader/Writer

Другие темы Java

Метод sort() класса Java ArrayList: использование и пример

Java методы ArrayList

Метод sort() класса Java ArrayList сортирует элементы в ArrayList по указанному порядку.

Синтаксис метода sort()

arraylist.sort(Comparator c)

Parameter sort()

  • comparator - specify the sorting order of the arraylist

Возврат значений sort()

Метод sort() не возвращает никакого значения. Он только изменяет порядок элементов в ArrayList.

Пример 1: сортировать ArrayList в порядке возрастания

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    //создать ArrayList
    ArrayList<String> languages = new ArrayList<>();
    //добавить элемент в ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Неотсортированный ArrayList: " + languages);
    //Сортировка ArrayList по возрастанию
    languages.sort(Comparator.naturalOrder());
    System.out.println("Отсортированный ArrayList: " + languages);
  }
}

Результат вывода

Неотсортированный ArrayList: [Python, Swift, C, JavaScript]
Сортированный ArrayList: [C, JavaScript, Python, Swift]

В предыдущем примере мы использовали метод sort() для сортировки ArrayList под названием languages. Обратите внимание на эту строку,

languages.sort(Comparator.naturalOrder());

Здесь метод naturalOrder() интерфейса Java Comparator specifies the elements to be sorted in natural order (i.e., ascending).

Интерфейс Comparator также предоставляет методы для сортировки элементов в порядке убывания. Например,

Пример 2: сортировать ArrayList в порядке убывания

import java.util.ArrayList;
import java.util.Comparator;
class Main {
  public static void main(String[] args) {
    //создать ArrayList
    ArrayList<String> languages = new ArrayList<>();
    //добавить элемент в ArrayList
    languages.add("Python");
    languages.add("Swift");
    languages.add("C");
    languages.add("JavaScript");
    System.out.println("Неотсортированный ArrayList: " + languages);
    //Сортировка ArrayList по возрастанию
    languages.sort(Comparator.reverseOrder());
    System.out.println("Отсортированный ArrayList: " + languages);
  }
}

Результат вывода

Неотсортированный ArrayList: [Python, Swift, C, JavaScript]
Отсортированный ArrayList: [Swift, Python, JavaScript, C]

Здесь метод reverseOrder() интерфейса Comparator указывает на сортировку элементов в обратном порядке (то есть по убыванию).

Внимание:Collections.sort()Метод является более удобным способом сортировки ArrayList.

Java методы ArrayList