Как отсортировать список, не изменяя его - PullRequest
0 голосов
/ 25 августа 2018

Я бы хотел отсортировать List элементов в Java и сделать так, чтобы сортировка возвращала новый отсортированный List без изменения оригинала List.Есть ли обычно используемая библиотека, которая делает это?

Ответы [ 2 ]

0 голосов
/ 25 августа 2018

Копирует (по ссылке) элементы из исходного списка в новый список. Внесение изменений, таких как упорядочение одного списка, не повлияет на другой.

List<String> original = new ArrayList<String>();
List<String> new = new ArrayList(original);

Обратите внимание, что если вы измените объекты в списке, изменения будут отражены в обоих списках, поскольку объекты копируются по ссылке.

0 голосов
/ 25 августа 2018

Если вы используете Java 8 или выше, вы можете использовать Stream API. См. Сортировка списка с помощью stream.sorted () в Java для получения подробной информации.

Например:

List<String> sortedList = myList.stream().sorted().collect(Collectors.toList());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...