метод sort
void sort(Сортирует этот список в соответствии с порядком, заданным функцией compare.
Функция compare должна действовать как Comparator.
List<String> numbers = ['two', 'three', 'four']; // Sort from shortest to longest. numbers.sort((a, b) => a.length.compareTo(b.length)); print(numbers); // [two, four, three]
По умолчанию реализации списка используют Comparable.compare, если compare опущено.
List<int> nums = [13, 2, -11]; nums.sort(); print(nums); // [-11, 2, 13]
Функция Comparator может сравнивать объекты как равные (возвращать ноль), даже если они являются различными объектами. Функция сортировки не гарантирует стабильности, поэтому различные объекты, которые сравниваются как равные, могут появиться в любом порядке в результате:
List<String> numbers = ['one', 'two', 'three', 'four']; numbers.sort((a, b) => a.length.compareTo(b.length)); print(numbers); // [one, two, four, three] OR [two, one, four, three]
Исходный код
void sort([int compare(E a, E b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-html/ImmutableListMixin/sort.html