使用 LINQ OrderBy() 方法对字符串名称列表进行排序的 C# 程序


在编程中,对字符串名称列表进行排序是一项常见任务,而 C# 中的 LINQ OrderBy() 方法提供了一种简单而高效的方法来实现此目的。在本文中,我们将逐步介绍一个使用 LINQ OrderBy() 方法对字符串名称列表进行排序的 C# 程序。

什么是 LINQ OrderBy() 方法?

LINQ OrderBy() 方法用于根据一个或多个键对序列中的元素进行升序或降序排序。这些键可以是简单的属性,也可以是基于序列中对象的一个或多个属性返回值的复杂表达式。

OrderBy() 方法的语法

public static IOrderedEnumerable<TSource> OrderBy<TSource, TKey>(
   this IEnumerable<TSource> source,
   Func<TSource, TKey> keySelector
)

第一个参数是要排序的源序列,第二个参数是一个函数,该函数返回用于对每个元素进行排序的键。返回值是与源序列类型相同的已排序序列。

使用 LINQ OrderBy() 方法对字符串名称列表进行排序

让我们考虑一个使用 LINQ OrderBy() 方法对字符串名称列表进行排序的示例。

示例

using System;
using System.Collections.Generic;
using System.Linq;

class Program {
   static void Main() {
      List<string> names = new List<string>() { "John", "Alice", "Peter", "Bob", "Mary" };
   
      var sortedNames = names.OrderBy(n => n);
   
      Console.WriteLine("Sorted Names:");
      foreach (var name in sortedNames) {
         Console.WriteLine(name);
      }
   }
}

输出

Sorted Names:
Alice
Bob
John
Mary
Peter

在这个示例中,我们创建了一个名为“names”的字符串名称列表,并用一些未排序的字符串名称对其进行了初始化。然后,我们使用 OrderBy() 方法根据每个元素的值按升序对列表进行排序。

lambda 表达式 n => n 用作键选择器函数,它只是返回每个元素的值。已排序的列表存储在一个名为“sortedNames”的新变量中。

最后,我们使用 foreach 循环将已排序的字符串名称列表打印到控制台。

结论

C# 中的 LINQ OrderBy() 方法是一个强大的工具,用于根据一个或多个键对元素序列进行排序。在本文中,我们展示了如何使用 OrderBy() 方法使用 lambda 表达式作为键选择器按升序对字符串名称列表进行排序。这仅仅是 LINQ 和 C# 功能的冰山一角。通过掌握 LINQ,您可以简化和优化代码,使其更高效且更易于维护。

更新于: 2023 年 5 月 4 日

2K+ 次查看

启动你的 职业生涯

通过完成课程获得认证

立即开始
广告