Spec-Zone.ru › Dart 1

dart:collection

Метод sort

void sort([int compare(E a, E b) ])

Сортирует этот список в соответствии с порядком, заданным функцией 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]

По умолчанию реализации List используют 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)]) {
  Sort.sort(this, compare ?? _compareAny);
}

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-collection/ListMixin/sort.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API