Сохраняет ли Kotlin sortedBy порядок равных значений? - PullRequest
2 голосов
/ 07 мая 2020

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

val list = listOf("a", "aa", "b", "bb")

Если я отсортирую этот список, используя sortedBy, используя какое-то свойство Comparable значений.

val sorted = list.sortedBy { it.length }

Будет ли сохранен исходный произвольный порядок для значений, которые сравниваются как равные?

["a", "b", "aa", "bb"] // good
["b", "a", "aa", "bb"] // bad
["a", "b", "bb", "aa"] // bad
["b", "a", "bb", "aa"] // bad

1 Ответ

5 голосов
/ 07 мая 2020

Да, согласно официальной документации :

Сортировка стабильна. Это означает, что одинаковые элементы сохраняют свой порядок относительно друг друга после сортировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...