Flutter list 数组排序

以使用Dart的 sort() 方法对Flutter中的List进行升序或降序排序。
sort()方法需要传递一个比较函数来指定如何对对象进行比较,并按照您指定的顺序进行排序。
以下是一个示例,假设有一个包含整数的列表,可以按照整数值进行排序:

List<int> numbers = [1, 3, 2, 5, 4];
// 升序排序
numbers.sort((a, b) => a.compareTo(b));
print(numbers); // 输出:[1, 2, 3, 4, 5]

// 降序排序
numbers.sort((a, b) => b.compareTo(a));
print(numbers); // 输出:[5, 4, 3, 2, 1]

在上述代码中,我们使用了sort()方法将数字列表按照升序和降序进行了排序。

在比较函数中,我们使用了 compareTo() 方法来比较两个数字对象。

如果想按照其他字段进行排序,只需将比较函数中的a和b替换为您想要排序的字段即可。


以下是示例代码,假设您有一个包含Person对象的列表,可以按照Person的年龄字段进行排序:

class Person {
  String name;
  int age;
  
  Person({this.name, this.age});
}

List<Person> persons = [
  Person(name: "John", age: 30),
  Person(name: "Jane", age: 20),
  Person(name: "Bob", age: 25),
];

// 按照年龄字段进行排序
persons.sort((a, b) => a.age.compareTo(b.age));

// 输出排序后的列表
print(persons);

在上述代码中,我们使用了sort()函数将Person对象列表按照年龄字段进行排序。
在该示例中,我们使用了compareTo()函数来比较Person对象的年龄字段,并按照升序排序。

如果您有小程序、APP、公众号、网站相关的需求,您可以通过私信来联系我

如果你有兴趣,可以关注一下我的综合公众号:biglead

猜你喜欢

转载自blog.csdn.net/zl18603543572/article/details/130549560