flutter list 升序排序和降序排序
时间: 2024-10-29 18:06:17 浏览: 29
在 Flutter 中,你可以使用 `List` 的 `sort()` 或者 `sorted()` 方法对列表内容进行排序。这里以升序为例:
```dart
void main() {
List<int> numbers = [5, 2, 9, 1, 7];
// 使用 sort() 方法进行升序排序,默认行为
numbers.sort();
print("升序排列: ${numbers.toList()}"); // 输出: [1, 2, 5, 7, 9]
// 如果你想自定义比较规则,可以提供一个比较函数给 sort()
numbers.sort((a, b) => a.compareTo(b)); // 默认也是升序
// 使用 sorted() 函数返回一个新的已排序列表,原列表不变
var sortedAscending = numbers.sorted();
}
```
对于降序排序,只需稍微调整一下比较函数:
```dart
// 降序排序
numbers.sort((a, b) => b.compareTo(a));
print("降序排列: ${numbers.toList()}"); // 输出: [9, 7, 5, 2, 1]
```
如果你想在原地改变列表顺序并且保持引用指向原列表,记得传递 `true` 给 `sort()`:
```dart
numbers.sort((a, b) => b.compareTo(a), true); // 降序并保持原地操作
```
阅读全文