📜  内置方法来排序列表 c# (1)

📅  最后修改于: 2023-12-03 14:50:08.905000             🧑  作者: Mango

内置方法来排序列表 c#

列表是一种经常用于存储数据的集合,在实际应用中我们经常需要对列表进行排序。C#提供了许多内置方法来对列表进行排序,本篇文章将为您介绍C#内置方法对列表进行排序的方法。

List排序方法
Sort

List.Sort() 方法用于对列表中的元素进行排序,排序规则由实现 IComparable 接口的元素类型的 CompareTo 方法定义。

List<int> numberList = new List<int> { 3, 2, 1 };
numberList.Sort();
Reverse

List.Reverse() 方法用于将列表中的元素反转。

List<int> numberList = new List<int> { 3, 2, 1 };
numberList.Reverse();
IEnumerable排序方法

IEnumerable是C#中的一个核心概念,它定义了一个用于支持简单迭代的接口。IEnumerable排序方法适用于大多数集合类型。

OrderBy

OrderBy 方法用于将一个序列按照指定的规则进行升序排列。OrderBy 的参数是一个 lambda 表达式,用来指定用于比较的排序规则。

List<int> numberList = new List<int> { 3, 2, 1 };
var sortedNumbers = numberList.OrderBy(x => x);
OrderByDescending

OrderByDescending 方法用于将一个序列按照指定的规则进行降序排列,参数和OrderBy相同。

List<int> numberList = new List<int> { 3, 2, 1 };
var sortedNumbers = numberList.OrderByDescending(x => x);
ThenBy

ThenBy 方法是 OrderBy 方法的补充,用于排序规则相同时,再根据指定的规则进行升序排序。

List<string> stringList = new List<string> { "ccc", "aa", "bbb" };
var sortedStrings = stringList.OrderBy(x => x.Length).ThenBy(x => x);
ThenByDescending

ThenByDescending 方法是 ThenBy 方法的补充,用于排序规则相同时,再根据指定的规则进行降序排序。

List<string> stringList = new List<string> { "ccc", "aa", "bbb" };
var sortedStrings = stringList.OrderBy(x => x.Length).ThenByDescending(x => x);
Array排序方法
Sort

Array.Sort() 方法用于对数组中的元素进行排序,排序规则由实现 IComparable 接口的元素类型的 CompareTo 方法定义。

int[] numberArray = new int[] { 3, 2, 1 };
Array.Sort(numberArray);
Reverse

Array.Reverse() 方法用于将数组中的元素反转。

int[] numberArray = new int[] { 3, 2, 1 };
Array.Reverse(numberArray);

以上就是C#内置方法对列表进行排序的方法,希望能对您有所帮助。