flutter - 如何在DartFlutter中按字母顺序对Set String进行排序?

2021-08-03 10:40:25 浏览数 (1)

问?我知道有List<string>,但是我需要使用Set<string>。有没有一种方法可以按字母顺序对其进行排序?

代码语言:javascript复制
Set reasons = {
  'Peter',
  'John',
  'James',
  'Luke',
}

最佳答案

使用 SplayTreeSet 代替:

代码语言:javascript复制
import 'dart:collection';
void main() {
​
sort();
}
​
​
  void sort() {
    final sortedSet = SplayTreeSet.from(
      {'Peter', 'John', 'James', 'Luke'},
      // Comparison function not necessary here, but shown for demonstrative purposes
      (a, b) => a.compareTo(b),
    );
    print("hh()            ${sortedSet}");
​
// Prints: {James, John, Luke, Peter}
  }

正如jamesdlin所指出的,如果该类型实现Comparable,则不需要比较功能。

0 人点赞