跳過到頁腳內容
.NET幫助

C# 打印列表:快速教程

在 C# 中,列印清單是一項常見的工作,可以透過各種方式完成,提供彈性與客製化。 清單是 C# 的基本資料結構,能夠列印清單內容對於除錯、日誌記錄或顯示資訊給使用者是非常重要的。

在本文中,我們將探討 在 C# 中列印清單的不同方法。

C#中的列表基本原理#。

在 C# 中,list 是一個動態陣列,其大小可以增大或縮小。它是 System.Collections.Generic 命名空間的一部分,提供處理項集合的彈性和效率。 以下程式碼會建立一個簡單的數字清單:

using System;
using System.Collections.Generic;
class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
    }
}
using System;
using System.Collections.Generic;
class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

使用循環列印清單

numbers = new List { 1, 2, 3, 4, 5 }; Console.WriteLine("Printing list using foreach loop:"); foreach (var number in numbers) { Console.WriteLine(number); } } } ``` 此方法簡潔易懂,適用於大多數情況。 ### 2. 使用 `for` 環路。 如果您需要對索引進行更多控制,或想要有條件地列印元素,您可以使用 `for` 環路。以下是一個字串清單的範例: ```csharp using System; using System.Collections.Generic; class Program { public static void Main() { // Create list of strongly typed objects List colors = new List { "Red", "Green", "Blue", "Yellow" }; Console.WriteLine("Printing list using for loop:"); for (int index = 0; index < colors.Count; index++) { Console.WriteLine($"Color at index {index}: {colors[index]}"); } } } ``` 當您需要存取索引或想要在列印過程中套用特定邏輯時,這種方法是有益的。

反向列印清單元素

1.使用 List.Reverse 方法 numbers = new List { 1, 2, 3, 4, 5 }; numbers.Reverse(); foreach (var number in numbers) { Console.WriteLine(number); } } } ``` ### 2.使用 LINQ OrderByDescending. 您也可以使用[`OrderByDescending`](https://learn.microsoft.com/en-us/dotnet/api/system.linq.enumerable.orderbydescending?view=net-8.0)方法與一個鍵,從 LINQ 的泛型類別中排列指定的元素集合: ```csharp using System; using System.Collections.Generic; using System.Linq; class Program { public static void Main() { List numbers = new List { 1, 2, 3, 4, 5 }; var reversedNumbers = numbers.OrderByDescending(n => n); foreach (var number in reversedNumbers) { Console.WriteLine(number); } } } ```

計算元素數量和列印

1.使用 List.Count 屬性 names = new List { "Alice", "Bob", "Charlie" }; int count = names.Count; Console.WriteLine($"Number of elements: {count}"); } } ```

2.使用 LINQ 計數方法

names = new List { "Alice", "Bob", "Charlie" }; int count = names.Count(); Console.WriteLine($"Number of elements: {count}"); } } ```

以指定索引列印清單元素

prices = new List { 19.99, 29.99, 39.99 }; int indexToPrint = 1; if (indexToPrint >= 0 && indexToPrint < prices.Count) { Console.WriteLine($"Element at index {indexToPrint}: {prices[indexToPrint]}"); } else { Console.WriteLine("Index out of range."); } } } ``` 這些範例提供了在各種情況下列印清單元素的基礎。 [`list`](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1?view=net-8.0) 類提供的其他有用方法可用於列印。 一些有用的方法有 * `Remove:` `Remove()` 方法會移除 C# 清單中第一個出現的項目。 * `RemoveAll:` `RemoveAll()` 方法用於根據指定的謂語移除元素。 * `RemoveRange:` `RemoveRange()` 方法根據指定的索引和計數參數移除元素範圍。 * `Add:` `Add()` 方法只能在列表末尾添加一個元素。 * `AddRange:` `AddRange()` 方法可以將指定集合的元素添加到最後。 * `Clear:` `Clear()` 方法會移除清單中的所有元素。 * `Insert:` `Insert()` 方法在指定的索引處插入一個元素到清單中。 * `ForEach:` `ForEach()` 方法用於在每個元素上執行特定動作,例如,有效率地列印每個 list 值。 * `ToArray:` `ToArray()` 方法會將清單複製到新的陣列中。 現在您可以選擇最符合您需求的方法,並提升 C# 程式碼的可讀性和效率。

String.Join 方法

numbers = new List { 1, 2, 3, 4, 5 }; string result = string.Join(", ", numbers); Console.WriteLine(result); } } ``` 在此,列表 `numbers` 中的元素被連接成一個以逗號和空格分隔的字串,形成格式化的輸出。 在列印清單元素之前,也可以使用排序方法。

使用 LINQ 的進階方案

numbers = new List { 1, 2, 3, 4, 5 }; List evenNumbers = numbers.Where(n => n % 2 == 0).ToList(); Console.WriteLine("Even numbers: " + string.Join(", ", evenNumbers)); } } ``` 在這個範例中,LINQ 用來篩選出原始清單中的偶數。`Where()` 方法與 lambda 表達式一起應用,而 `ToList()` 方法則用來將結果轉換回列表。 ![C# 列印清單 (How It Works For Developers):圖 1 - 控制台輸出:偶數:2, 4](/static-assets/print/blog/csharp-print-list/csharp-print-list-1.webp) ## 自訂物件和 ToString() 方法。 如果您有自訂物件清單,建議在您的物件類別中覆寫 `ToString` 方法,以獲得有意義的表示。 以下範例示範如何執行: ```csharp using System; using System.Collections.Generic; class Person { public string Name { get; set; } public int Age { get; set; } public override string ToString() { return $"{Name}, {Age} years old"; } } class Program { public static void Main() { List people = new List { new Person { Name = "Alice", Age = 30 }, new Person { Name = "Bob", Age = 25 } }; foreach (Person person in people) { Console.WriteLine(person); } } } ``` 透過覆寫 `Person` 類中的 `ToString()` 方法,您可以控制該類的實體如何表示為字串。 這可增強您列印清單時的可讀性。 ![C# 列印清單 (How It Works For Developers):圖 2 - 控制台輸出](/static-assets/print/blog/csharp-print-list/csharp-print-list-2.webp) ## 介紹 IronPrint - C# 列印函式庫。 [IronPrint](/csharp/print/)是功能強大且可部署的列印函式庫,以準確性、易用性和速度為優先考量。 其跨平台支援及與各種文件格式的相容性,使其成為 .NET 開發人員在其應用程式中尋求高效率列印解決方案的重要工具。 ![C# 列印清單 (How It Works For Developers):圖 3 - IronPrint for .NET:C# 列印函式庫](/static-assets/print/blog/csharp-print-list/csharp-print-list-3.webp)。

主要功能

1.跨平台相容性2.支援的格式3.安裝簡易使用 IronPrint 進行列印:程式碼範例1.列印文件2.使用對話框列印3.自訂列印設定結論

常見問題解答

如何在C#中打印列表?

您可以使用IronPrint在C#中打印列表,方法是通過foreachfor循環迭代列表元素,並將格式化的輸出傳遞給IronPrint打印。

使用動態數組在C#中有哪些好處?

C#中的動態數組(或列表)提供了靈活性,因為它們可以增長或縮小大小。它們是System.Collections.Generic命名空間的一部分,允許有效地處理和操作集合。

如何在C#中反轉列表以進行打印?

要以反向順序打印列表,您可以使用Reverse方法或LINQ的OrderByDescending然後使用IronPrint打印反轉的列表。

如何將列表格式化為字串以進行打印?

您可以使用String.Join方法將列表元素連接成具有指定分隔符的單個格式化字串。然後可以使用IronPrint打印此格式化字串。

ToString方法在打印自定義物件中的作用是什麼?

通過覆蓋ToString方法,您可以定義自定義物件實例如何表示為字串,這在使用IronPrint打印時提高了可讀性。

如何在C#中篩選並打印列表中特定的元素?

可以使用LINQ方法如Where來篩選並選擇列表中的特定元素。然後可以使用IronPrint打印篩選的結果。

如何安裝.NET的打印庫?

您可以通過NuGet包管理控制台使用命令Install-Package IronPrint或通過Visual Studio的NuGet包管理器安裝IronPrint。

IronPrint為.NET開發人員提供了哪些功能?

IronPrint提供跨平台兼容性,支持多種文件格式,靜默打印,打印對話框和可自定義的打印設置,使其成為.NET開發人員的強大選擇。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。