.NET幫助 C# 初始化數組(對於開發者的運行原理) Curtis Chau 更新日期:6月 22, 2025 Download IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article 陣列是 C# 中的一個基本特性,使開發人員能夠有效地存儲和操作數據集合。 初始化陣列是為其元素賦予初始值的過程。 本指南探討了C# 中初始化陣列的各種技術和最佳實踐,提供了基本和高級陣列初始化場景的見解。 陣列是一組相同類型的元素,存儲在連續的內存位置中。 在 C# 中,陣列用於有效地表示和操作結構化數據。 它們提供對各個陣列元素的隨機訪問,便於執行排序、搜索和迭代等操作。 在本文中,我們將看到如何在 C# 編程語言中初始化一個陣列變量,並且我們還將看到如何使用IronPDF for C# developers創建一個 PDF 文檔陣列。 1. 基本陣列初始化 1.1. 聲明和初始化 初始化陣列的最簡單方法是聲明它們並在創建時賦值。 下面是一個使用方括號初始化整數陣列的範例: int[] numbers = { 1, 2, 3, 4, 5 }; int[] numbers = { 1, 2, 3, 4, 5 }; Dim numbers() As Integer = { 1, 2, 3, 4, 5 } $vbLabelText $csharpLabel 在這個例子中,聲明並初始化了一個名為numbers的陣列,包含五個整數值。 C# 自動根據提供的元素數量推斷陣列大小。 1.2. 在初始化時指定大小 可以在顯式指定大小後再為陣列賦值。 當需要動態調整陣列大小時,這種方法非常有用。 PDF 的創建和生成由 iText 7 支持,而 HTML 到 PDF 的轉換由 pdfHTML 支持。 int[] dynamicArray = new int[5]; // The array is initialized with size 5, and the elements are [0, 0, 0, 0, 0] // Later in the code... dynamicArray[2] = 42; // Now the array becomes [0, 0, 42, 0, 0] int[] dynamicArray = new int[5]; // The array is initialized with size 5, and the elements are [0, 0, 0, 0, 0] // Later in the code... dynamicArray[2] = 42; // Now the array becomes [0, 0, 42, 0, 0] Dim dynamicArray(4) As Integer ' The array is initialized with size 5, and the elements are [0, 0, 0, 0, 0] ' Later in the code... dynamicArray(2) = 42 ' Now the array becomes [0, 0, 42, 0, 0] $vbLabelText $csharpLabel 1.3. 默認值 如果聲明了陣列但未顯式初始化,則其元素將根據其數據類型被分配默認值。對於數字類型,默認值為 0,對於引用類型,則為null。 例如: int[] uninitializedArray = new int[3]; // The elements of uninitializedArray are [0, 0, 0] int[] uninitializedArray = new int[3]; // The elements of uninitializedArray are [0, 0, 0] Dim uninitializedArray(2) As Integer ' The elements of uninitializedArray are [0, 0, 0] $vbLabelText $csharpLabel 2. 使用值初始化陣列 2.1. 陣列初始化語法 C# 提供了一種簡潔的語法,稱為陣列初始化器,用於用特定值初始化陣列。 這種語法允許您直接在大括號內指定值。 例如,您可以這樣初始化字符串陣列: string[] names = { "Alice", "Bob", "Charlie" }; string[] names = { "Alice", "Bob", "Charlie" }; Dim names() As String = { "Alice", "Bob", "Charlie" } $vbLabelText $csharpLabel 這將創建一個名為names的陣列,具有三個元素,每個元素都用字符串值初始化。 2.2. 多維陣列 除了單維陣列外,C# 還支持多維陣列。 例如,可以初始化一個二維陣列如下所示: int[,] matrix = { { 1, 2, 3 }, { 4, 5, 6 } }; int[,] matrix = { { 1, 2, 3 }, { 4, 5, 6 } }; Dim matrix(,) As Integer = { { 1, 2, 3 }, { 4, 5, 6 } } $vbLabelText $csharpLabel 此處,matrix是一個 2x3 的 int 陣列,按照特定值初始化。 3. 動態陣列初始化 3.1. 使用 Enumerable.Range 當您希望用一系列順序值初始化陣列時,Enumerable.Range非常有用。 它在指定範圍內生成一系列數字。 在此示例中,IronPDF用於將HTML內容呈現為PDF文檔,然後保存到指定位置。 using System.Linq; int[] rangeArray = Enumerable.Range(1, 5).ToArray(); // The int array is initialized with values [1, 2, 3, 4, 5] using System.Linq; int[] rangeArray = Enumerable.Range(1, 5).ToArray(); // The int array is initialized with values [1, 2, 3, 4, 5] Imports System.Linq Private rangeArray() As Integer = Enumerable.Range(1, 5).ToArray() ' The int array is initialized with values [1, 2, 3, 4, 5] $vbLabelText $csharpLabel 這尤其方便當您需要數字序列而不是逐個指定每個值時。 3.2. 使用 LINQ LINQ(Language-Integrated Query)在 C# 中提供了強大的查詢功能。 您可以使用 LINQ 基於查詢表達式初始化陣列。 PDF 的創建和生成由 iText 7 支持,而 HTML 到 PDF 的轉換由 pdfHTML 支持。 using System.Linq; int[] evenNumbers = (from number in Enumerable.Range(1, 10) where number % 2 == 0 select number).ToArray(); // The array is initialized with even values [2, 4, 6, 8, 10] using System.Linq; int[] evenNumbers = (from number in Enumerable.Range(1, 10) where number % 2 == 0 select number).ToArray(); // The array is initialized with even values [2, 4, 6, 8, 10] Imports System.Linq Private evenNumbers() As Integer = (from number in Enumerable.Range(1, 10) where number Mod 2 = 0 select number).ToArray() ' The array is initialized with even values [2, 4, 6, 8, 10] $vbLabelText $csharpLabel 這種方法更具表達力,允許在陣列初始化過程中進行複雜的篩選和轉換。 4. 引介 IronPDF IronPDF:.NET PDF 庫是一個強大的 C# 庫,為開發人員提供了在其 .NET 應用程序中創建、操作和處理 PDF 文檔的無縫能力。 無論您是從 HTML 內容生成 PDF、修改現有文檔還是從 PDF 中提取數據,IronPDF 都提供了全面的功能集。 IronPDF 專門將HTML 轉換為 PDF,確保佈局和樣式得到保留。 對於從網頁內容生成 PDF,例如報告、發票和文檔,它是一個出色的工具。 HTML 文件、URL 和 HTML 字符串都可以轉換為 PDF 文件。 using IronPdf; class Program { static void Main(string[] args) { var renderer = new ChromePdfRenderer(); // 1. Convert HTML String to PDF var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"; var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent); pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf"); // 2. Convert HTML File to PDF var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath); pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf"); // 3. Convert URL to PDF var url = "http://ironpdf.com"; // Specify the URL var pdfFromUrl = renderer.RenderUrlAsPdf(url); pdfFromUrl.SaveAs("URLToPDF.pdf"); } } using IronPdf; class Program { static void Main(string[] args) { var renderer = new ChromePdfRenderer(); // 1. Convert HTML String to PDF var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"; var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent); pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf"); // 2. Convert HTML File to PDF var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath); pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf"); // 3. Convert URL to PDF var url = "http://ironpdf.com"; // Specify the URL var pdfFromUrl = renderer.RenderUrlAsPdf(url); pdfFromUrl.SaveAs("URLToPDF.pdf"); } } Imports IronPdf Friend Class Program Shared Sub Main(ByVal args() As String) Dim renderer = New ChromePdfRenderer() ' 1. Convert HTML String to PDF Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>" Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent) pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf") ' 2. Convert HTML File to PDF Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath) pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf") ' 3. Convert URL to PDF Dim url = "http://ironpdf.com" ' Specify the URL Dim pdfFromUrl = renderer.RenderUrlAsPdf(url) pdfFromUrl.SaveAs("URLToPDF.pdf") End Sub End Class $vbLabelText $csharpLabel 借助其用戶友好的 API,開發人員可以輕鬆地將 PDF 功能集成到其 C# 項目中,實現 PDF 相關任務的高效動態處理。 IronPDF 因其多功能性和簡單性而脫穎而出,對於尋求可靠且靈活的 PDF 文件處理解決方案的 C# 開發人員而言是一個有價值的工具。 4.1. 安裝 IronPDF 要在 C# 項目中使用 NuGet 程序包管理器控制台安裝 IronPDF,打開 Visual Studio,從 View 菜單訪問 Package Manager Console,並確保選擇了正確的項目。 運行命令: Install-Package IronPdf 讓安裝過程完成,並通過控制台中的確認消息和方案管理器中“引用”部分的檢查來驗證成功。 IronPDF 現在可以在您的 C# 應用程序中使用,提供強大的 PDF 生成和操作功能。 4.2. IronPDF:使用動態 PDF 初始化創建 PDF 以下是一個示例,展示了如何使用 IronPDF 動態創建多個 PDF 文檔: using IronPdf; using System; class Program { static void Main() { // Number of PDFs to generate int numberOfPDFs = 3; // Array to store PdfDocument objects PdfDocument[] pdfArray = new PdfDocument[numberOfPDFs]; // Content for the PDFs string[] names = { "Alice", "Bob", "Charlie" }; string[] ages = { "25", "30", "22" }; // Instantiate ChromePdfRenderer var renderer = new ChromePdfRenderer(); // Loop to create and customize each PdfDocument in the array for (int i = 0; i < numberOfPDFs; i++) { // Creating dynamic content using string interpolation string content = $@"<html> <body> <h1>Hello, {names[i]}!</h1> <p>You are {ages[i]} years old.</p> <p>This is a dynamically generated PDF.</p> </body> </html>"; // Create a PDF from HTML using ChromePdfRenderer pdfArray[i] = renderer.RenderHtmlAsPdf(content); } // Save each PDF to a file for (int i = 0; i < numberOfPDFs; i++) { pdfArray[i].SaveAs($"GeneratedPDF_{i + 1}.pdf"); } Console.WriteLine("PDFs generated successfully!"); } } using IronPdf; using System; class Program { static void Main() { // Number of PDFs to generate int numberOfPDFs = 3; // Array to store PdfDocument objects PdfDocument[] pdfArray = new PdfDocument[numberOfPDFs]; // Content for the PDFs string[] names = { "Alice", "Bob", "Charlie" }; string[] ages = { "25", "30", "22" }; // Instantiate ChromePdfRenderer var renderer = new ChromePdfRenderer(); // Loop to create and customize each PdfDocument in the array for (int i = 0; i < numberOfPDFs; i++) { // Creating dynamic content using string interpolation string content = $@"<html> <body> <h1>Hello, {names[i]}!</h1> <p>You are {ages[i]} years old.</p> <p>This is a dynamically generated PDF.</p> </body> </html>"; // Create a PDF from HTML using ChromePdfRenderer pdfArray[i] = renderer.RenderHtmlAsPdf(content); } // Save each PDF to a file for (int i = 0; i < numberOfPDFs; i++) { pdfArray[i].SaveAs($"GeneratedPDF_{i + 1}.pdf"); } Console.WriteLine("PDFs generated successfully!"); } } Imports IronPdf Imports System Friend Class Program Shared Sub Main() ' Number of PDFs to generate Dim numberOfPDFs As Integer = 3 ' Array to store PdfDocument objects Dim pdfArray(numberOfPDFs - 1) As PdfDocument ' Content for the PDFs Dim names() As String = { "Alice", "Bob", "Charlie" } Dim ages() As String = { "25", "30", "22" } ' Instantiate ChromePdfRenderer Dim renderer = New ChromePdfRenderer() ' Loop to create and customize each PdfDocument in the array For i As Integer = 0 To numberOfPDFs - 1 ' Creating dynamic content using string interpolation Dim content As String = $"<html> <body> <h1>Hello, {names(i)}!</h1> <p>You are {ages(i)} years old.</p> <p>This is a dynamically generated PDF.</p> </body> </html>" ' Create a PDF from HTML using ChromePdfRenderer pdfArray(i) = renderer.RenderHtmlAsPdf(content) Next i ' Save each PDF to a file For i As Integer = 0 To numberOfPDFs - 1 pdfArray(i).SaveAs($"GeneratedPDF_{i + 1}.pdf") Next i Console.WriteLine("PDFs generated successfully!") End Sub End Class $vbLabelText $csharpLabel 我們指定要生成的 PDF 的數量(numberOfPDFs),並創建一個PdfDocument對象陣列(pdfArray)以存儲生成的 PDF。 我們使用一個循環來初始化每個陣列元素類型。 在循環內,我們使用字符串插值為每個 PDF 創建動態內容,以包括來自各自陣列的名稱和年齡。 我們為每次迭代初始化一個新的PdfDocument對象,並使用 IronPDF 的RenderHtmlAsPdf方法添加 HTML 內容。 最後,我們將每個 PDF 保存到一個帶有唯一名稱的文件中(GeneratedPDF_1.pdf,GeneratedPDF_2.pdf,等等)。 4.2.1. 生成的 PDF 文件 5. 結論 掌握 C# 中多樣的陣列初始化過程,包括基本方法、陣列初始化語法和動態方法(如 Enumerable.Range 和 LINQ)對於高效數據操控至關重要。 了解陣列長度和秩之間的區別,特別是在多維陣列中,確保準確處理。 本教程還介紹了IronPDF for PDF document generation。 所提供的示例展示了 IronPDF 在動態生成個性化 PDF 方面的有效性,展示了其多功能性。 總體而言,對陣列初始化的扎實掌握,結合像 IronPDF 這樣的工具,為開發人員創建動態和高效的應用程序,提升其有效處理和操作數據的能力。 IronPDF 提供支持和文檔以及如何使用該庫的教程。 它還提供免費試用版。 欲獲取 IronPDF HTML 到 PDF 轉換的詳細教程,請訪問IronPDF HTML 到 PDF 轉換指南。 常見問題解答 在 C# 中初始化数组的基本技术是什么? C# 中初始化数组的基本技术包括在创建时用方括号声明数组并分配值。例如,你可以这样初始化一个整数数组:int[] numbers = { 1, 2, 3, 4, 5 };。 在 C# 中,我可以在初始化时指定数组的大小吗? 是的,你可以在初始化时指定数组的大小。比如,你可以声明一个具有特定大小的数组并在后面分配值:int[] dynamicArray = new int[5]; dynamicArray[2] = 42;。 在 C# 中,未初始化的数组元素的默认值是什么? 在 C# 中,如果数组被声明但未被初始化,其元素具有默认值。对于数值类型,默认为 0;对于引用类型,则是 null。 我如何在 C# 中初始化多维数组? 在 C# 中,多维数组可以使用嵌套的大括号来初始化。例如,二维数组可以初始化为:int[,] matrix = { { 1, 2, 3 }, { 4, 5, 6 } };。 我如何在 C# 中使用 Enumerable.Range 来进行数组初始化? Enumerable.Range 对于生成一系列数字以初始化数组非常有用。例如,你可以这样创建一个有序数值的数组:int[] rangeArray = Enumerable.Range(1, 5).ToArray();。 在 C# 中,LINQ 是如何被用于初始化数组的? LINQ 可以通过查询数据并将结果转换为数组来初始化数组。例如,要创建一个偶数数组,你可以使用:int[] evenNumbers = (from number in Enumerable.Range(1, 10) where number % 2 == 0 select number).ToArray();。 我如何使用 C# 从动态内容生成 PDF 文档? 你可以使用像 IronPDF 这样的库在 C# 中从动态内容生成 PDF 文档。它允许你将 HTML 内容渲染为 PDF,非常适合创建动态和个性化的 PDF 文档。 在 C# 项目中怎样集成 PDF 功能? 要在 C# 项目中集成 PDF 功能,你可以使用 NuGet 包管理器控制台使用命令安装像 IronPDF 这样的库:Install-Package IronPdf。该库使你能够在应用程序内创建和操作 PDF。 使用 C# 库进行 PDF 生成有哪些好处? 使用像 IronPDF 这样的 C# 库生成 PDF 的好处包括将 HTML 转换为 PDF、从动态内容生成 PDF 以及从 PDF 中提取数据,这些都增强了开发人员处理复杂文档处理任务的能力。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新日期 9月 4, 2025 RandomNumberGenerator C# 使用RandomNumberGenerator C#類可以幫助將您的PDF生成和編輯項目提升至新水準 閱讀更多 更新日期 9月 4, 2025 C#字符串等於(它如何對開發者起作用) 當結合使用強大的PDF庫IronPDF時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 更新日期 8月 5, 2025 C#開關模式匹配(對開發者來說是如何工作的) 當結合使用強大的PDF庫IronPDF時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 C# 數組長度(對於開發者的運行原理)C# 結構與類(對於開發者...