IRONSOFTWAREHOME
開發者更新

C# 列表(開發者的工作原理)

Jacob Mellor,首席技術官 @ Team Iron
Jacob Mellor
Updated: 2026年6月28日

清單是靈活且動態的資料結構,用於在C#中儲存和操作資料集合。 它們是System.Collections.Generic命名空間的一部分,該命名空間提供了一系列強大且型別安全的集合類和強型別物件。 這篇適合初學者的教程將引導您了解使用C#清單的基礎知識,包括如何建立/新增元素、存取指定索引或首次出現的元素、修改指定元素和移除元素,以及一些常見的使用案例。

建立清單

要開始使用清單類別,您首先需要在程式碼中包含System.Collections.Generic命名空間:

using System.Collections.Generic;

新增泛型命名空間後,透過在角括號內指定您要儲存的所有元素的資料型態,建立一個新的List物件。 以下是一個建立整數清單的範例:

List<int> numbers = new List<int>();

您也可以使用一些初始值來初始化清單或藉由指定的集合來定義它,例如:

List<string> fruits = new List<string> { "apple", "banana", "cherry" };

我們也可以指定清單的預設初始容量。指定的初始容量是清單的預設最大容量。

清單的方法

向清單中新增元素數量

要向您的清單中新增元素,使用Add()方法:

numbers.Add(1);     // Adds first element
numbers.Add(2);
numbers.Add(3);

您也可以使用AddRange方法從指定的集合中新增一系列元素到清單中:

List<int> moreNumbers = new List<int> { 4, 5, 6 };
numbers.AddRange(moreNumbers);

存取清單元素

您可以使用索引存取清單的單個元素,就像使用陣列一樣:

string firstFruit = fruits[0];          // "apple"
string secondFruit = fruits[1];         // "banana"

請記住,清單是從零開始索引的,因此第一個元素的索引為0。上述範例將會把元素儲存在字串中(如果存在)。

修改清單元素

要修改清單中的元素,只需為所需索引處的元素指定一個新值,請記住從零開始的索引:

fruits[1] = "blueberry";

現在,水果清單中的第二個元素是"藍莓"而不是"香蕉"。

從清單中移除元素

要從清單中移除元素,可以使用Remove方法,該方法移除指定元素的首次出現:

fruits.Remove("apple");

或者,您可以使用RemoveAt方法移除指定索引上的元素:

fruits.RemoveAt(0);

要移除清單中的所有元素,使用Clear方法:

fruits.Clear();

在清單中查找元素

您可以使用Contains()方法來檢查清單中是否包含特定元素:

bool containsApple = fruits.Contains("apple");  // true

要找到元素首次出現的索引,使用IndexOf方法:

int appleIndex = fruits.IndexOf("apple");  // 0

如果找不到元素,IndexOf會返回-1。

遍歷清單

要迭代清單中的元素,您可以使用foreach迴圈:

foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}

或者,您可以使用具有返回清單中元素數量的for迴圈:

for (int i = 0; i < fruits.Count; i++)
{
    Console.WriteLine(fruits[i]);
}

對清單進行排序

要將清單按升序排列,使用Sort方法:

List<int> unsortedNumbers = new List<int> { 5, 2, 8, 1, 4 };
unsortedNumbers.Sort();

// Now, unsortedNumbers is { 1, 2, 4, 5, 8 }

要將清單按降序排序,您可以使用具有自訂比較的Sort方法:

unsortedNumbers.Sort((a, b) => b.CompareTo(a));

// Now, unsortedNumbers is { 8, 5, 4, 2, 1 }

對於更複雜的排序,您可以實作自訂的IComparer類或使用LINQ(語言整合查詢)。 二元搜尋算法在已排序的清單上運作。

將LINQ與清單合併使用

LINQ允許您對集合,包括清單,進行強大的查詢和轉換。 要使用LINQ,您首先需要在程式碼中包含System.Linq命名空間:

using System.Linq;

這是一些關於清單的LINQ查詢的範例:

過濾清單

List<int> evenNumbers = numbers.Where(x => x % 2 == 0).ToList();

在清單中映射(轉換)元素

List<string> fruitNamesUpperCase = fruits.Select(x => x.ToUpper()).ToList();

查找清單中的最小值和最大值

int minValue = numbers.Min();
int maxValue = numbers.Max();

將清單轉換為陣列

要將清單轉換為陣列,您可以使用ToArray方法:

int[] numbersArray = numbers.ToArray();

使用IronPDF將清單資料匯出為PDF

在這一部分,我們將演示如何使用IronPDF程式庫將清單中的資料導出到PDF文件。 這在您想要生成報告或可列印版本的資料時非常有用。

首先,下載並安裝IronPDF NuGet套件到您的專案:

PM > Install-Package IronPdf

接下來,在程式碼中包含IronPdf命名空間:

using IronPdf;

現在,讓我們建立一個簡單的函式,將List字串轉換為HTML表格,然後導出到PDF文件:

using System.Collections.Generic;
using System.Text;
using IronPdf;

void ExportListToPdf(List<string> data, string pdfFilePath)
{
    // Create an HTML table from the list data
    StringBuilder htmlBuilder = new StringBuilder();
    htmlBuilder.Append("<table><tr><th>Item</th></tr>");

    foreach (string item in data)
    {
        htmlBuilder.Append($"<tr><td>{item}</td></tr>");
    }

    htmlBuilder.Append("</table>");

    // Convert the HTML table to a PDF using IronPDF
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlBuilder.ToString());

    // Save the PDF to the specified file path
    pdf.SaveAs(pdfFilePath);
}

要使用此函式,只需用您的清單和所需的PDF文件路徑來呼叫它:

List<string> fruits = new List<string> { "apple", "banana", "cherry" };
ExportListToPdf(fruits, "Fruits.pdf");

這將生成一個名為"Fruits.pdf"的PDF文件,包含將水果清單列表轉換為PDF的表格,並使用IronPDF將HTML轉換為PDF。 您可以修改ExportListToPdf函式以符合您的需求,例如為HTML表格新增自訂樣式或在PDF中新增其他內容。

C#清單(它如何為開發者工作) 圖1 - HTML轉換為PDF

結論

在這篇適合初學者的教程中,我們討論了使用C#清單的基礎知識,並演示了如何整合IronPDF將清單資料匯出到PDF文件中。透過把IronPDF納入您的專案中,您可以輕鬆生成報告、發票或其他可列印的文件。

IronPDF提供免費試用,讓您能夠在承諾購買之前測試其功能。

Jacob Mellor,首席技術官 @ Team Iron
首席技術官

Jacob Mellor是Iron Software的首席技術官,一位在C# PDF技術上開創先河的遠見工程師。作為Iron Software核心程式碼庫的原開發者,他從創立以來就一直在塑造公司的產品架構,與首席執行官Cameron Rimington一起將公司轉變為服務於NASA、特斯拉和全球政府公司的50多名人員的公司。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立