使用 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+ 次檢視

啟動你的 職業生涯

透過完成課程獲得認證

立即開始
廣告