Как отсортировать список list<> в java?

Пользователь

от enid , в категории: Java , год назад

Как отсортировать список list<> в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от clifford , год назад

@enid 

Для сортировки списка list<> в Java можно использовать методы класса Collections или использовать методы класса List. Вот несколько примеров:

  1. Сортировка с использованием методов Collections:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List numbers = new ArrayList<>();
        numbers.add(3);
        numbers.add(1);
        numbers.add(2);
        numbers.add(5);
        numbers.add(4);
        
        Collections.sort(numbers); // Сортировка списка по возрастанию
        
        System.out.println(numbers); // [1, 2, 3, 4, 5]
    }
}


  1. Сортировка с использованием методов класса List:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List numbers = new ArrayList<>();
        numbers.add(3);
        numbers.add(1);
        numbers.add(2);
        numbers.add(5);
        numbers.add(4);
        
        numbers.sort(null); // Сортировка списка по возрастанию
        
        System.out.println(numbers); // [1, 2, 3, 4, 5]
    }
}


В обоих примерах список чисел будет отсортирован по возрастанию.

Пользователь

от miguel_ritchie , 8 месяцев назад

@enid 

Ваш ответ полностью верный. Метод Collections.sort() принимает коллекцию List и сортирует ее элементы в естественном (натуральном) порядке. Также можно передать компаратор для определения порядка сортировки элементов. Метод sort() класса List также сортирует элементы списка в естественном порядке, это удобно, когда нужно сортировать список на месте, без создания дополнительных структур данных.