.NET幫助 C# Continue(對於開發者的運行原理) Curtis Chau 更新日期:6月 20, 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#中,用於控制循環的三個基本語句是「continue」、「break」和「goto」。 這些語句為程序員提供了在循環中改變執行流程的能力,提高了代碼的效率和可讀性。 在本文中,我們深入探討C#中continue和break方法的複雜性,探究它們的語法、應用及最佳實踐。 Later in the article, we will also learn about IronPDF - a robust C# PDF library from Iron Software to read and write PDF documents. 了解‘continue;’語句 continue語句用於循環結構中,跳過剩餘的代碼塊並進入循環的下一次迭代。本質上,它告訴程序控制跳過當前迭代剩餘的代碼並進入下一次迭代。 語法 continue; continue; continue $vbLabelText $csharpLabel 示例 public class Program { public static void Main() { Console.WriteLine("Demonstrate Continue Method in C#"); Console.WriteLine("Print 1 to 10 skipping 5"); for (int i = 0; i < 10; i++) { if (i == 5) { continue; // Skips iteration when i equals 5 } Console.WriteLine(i); } } } public class Program { public static void Main() { Console.WriteLine("Demonstrate Continue Method in C#"); Console.WriteLine("Print 1 to 10 skipping 5"); for (int i = 0; i < 10; i++) { if (i == 5) { continue; // Skips iteration when i equals 5 } Console.WriteLine(i); } } } Public Class Program Public Shared Sub Main() Console.WriteLine("Demonstrate Continue Method in C#") Console.WriteLine("Print 1 to 10 skipping 5") For i As Integer = 0 To 9 If i = 5 Then Continue For ' Skips iteration when i equals 5 End If Console.WriteLine(i) Next i End Sub End Class $vbLabelText $csharpLabel 在此示例中,當i等於5時,執行continue語句,跳過該次循環內的剩餘代碼。 結果,數字5將不會被打印,循環進入下一次迭代。 輸出 探索‘break;’方法 與continue相反,break語句用於提前退出循環。 當遇到時,它終止循環的執行,無論循環條件如何。 它通常用來在特定條件滿足時提早退出循環,如while循環。 示例 int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; foreach (int number in numbers) { if (number == 6) { break; // Exits loop when number equals 6 } Console.WriteLine(number); } int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; foreach (int number in numbers) { if (number == 6) { break; // Exits loop when number equals 6 } Console.WriteLine(number); } Dim numbers() As Integer = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } For Each number As Integer In numbers If number = 6 Then Exit For ' Exits loop when number equals 6 End If Console.WriteLine(number) Next number $vbLabelText $csharpLabel 在這個例子中,循環遍歷numbers數組。 當遇到數字6時,執行break語句,導致循環提前結束。 因此,只有數字1到5會被打印。 探索'goto;'語句 C#中的goto語句提供了一種將控制權轉移到同一方法內、同一switch語句內或同一循環內指定標籤的方法。雖然goto可以是一個強大的工具,用於修改流程跳轉語句,但由於可能使代碼較難閱讀和維護,在現代編程中經常不建議使用。 然而,在某些情況下,可以有效且安全地使用goto。 語法 C#中goto語句的語法很簡單: goto label; goto label; GoTo label $vbLabelText $csharpLabel 標籤是後隨冒號(:)的標識符,表示代碼中的目標位置。 示例 考慮一種場景,當特定條件滿足時,你希望提前退出嵌套循環。 可以使用goto語句實現這一點: for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { if (i * j > 10) { goto exitLoop; } Console.WriteLine($"i: {i}, j: {j}"); } } exitLoop: Console.WriteLine("Exited the nested loop prematurely."); for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { if (i * j > 10) { goto exitLoop; } Console.WriteLine($"i: {i}, j: {j}"); } } exitLoop: Console.WriteLine("Exited the nested loop prematurely."); For i As Integer = 0 To 4 For j As Integer = 0 To 4 If i * j > 10 Then GoTo exitLoop End If Console.WriteLine($"i: {i}, j: {j}") Next j Next i exitLoop: Console.WriteLine("Exited the nested loop prematurely.") $vbLabelText $csharpLabel 在這個例子中,當條件i * j > 10滿足時,goto語句將控制轉移到exitLoop標籤,有效地退出嵌套循環。 Introducing IronPDF - Comprehensive PDF Library from Iron Software. IronPDF,由Iron Software開發,是一個強大的C# PDF 庫,為在.NET項目中使用PDF提供了一體化解決方案。 無論你需要創建、編輯、導出、加密、加載還是操作PDF文檔,IronPDF都能滿足你的需求。 以下是一些關鍵特性和使用案例: HTML到PDF轉換:無縫轉換HTML內容到PDF格式。 你可以從HTML、MVC、ASPX,甚至圖像生成PDF。 簽名、編輯和閱讀PDF:具有超過50種功能,IronPDF允許你對PDF文件進行簽名、編輯和提取內容。 無論是添加數字簽名還是修改現有PDF,IronPDF都使得操作變得簡單。 跨平台支持:IronPDF設計用于C#、F#和VB.NET,並且運行於多種.NET版本,包括.NET Core、.NET Standard和.NET Framework。 它也可供Java、Node.js和Python使用。 兼容性和環境: .NET版本:支持C#、VB.NET和F#。 項目類型:可用於Web(Blazor和WebForms)、桌面(WPF和MAUI)和控制台應用程序。 應用程序環境:與Windows、Linux、Mac、Docker、Azure、AWS等兼容。 IDE:與Microsoft Visual Studio和JetBrains Rider無縫集成。 操作系統和處理器:運行於Windows、Mac和Linux(x64、x86、ARM)。 PDF標準和編輯: 支持多種PDF版本(1.2 - 1.7)、PDF/UA和PDF/A。 設置PDF文件的屬性、安全性和壓縮。 編輯元數據、修訂歷史和文檔結構。 應用頁面模板、頁眉、頁腳和頁面設置。 性能優化: 完全支持多線程和異步以生成有效的PDF。 優先考慮準確性、易用性和速度。 現在我們已經了解了IronPDF庫,讓我們編寫一個應用程序來使用IronPDF和continue語句、break語句和goto語句。 使用Continue語句生成PDF文檔 首先,讓我們創建一個Visual Studio控制台應用程序。 提供項目名稱和位置。 下一步,選擇所需的.NET版本並點擊創建。 現在使用以下命令安裝IronPDF。 dotnet add package IronPdf --version 2024.4.2 現在讓我們使用控制語句生成一個PDF文檔。 using System; using System.Threading.Tasks; using IronPdf; class Program { public static async Task Main() { Console.WriteLine("Generate PDF document Using IronPDF"); // Initialize a ChromePdfRenderer to render HTML content to PDF var htmlToPdf = new ChromePdfRenderer(); var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>"; // Use continue statement to build HTML content for (int i = 0; i < 10; i++) { if (i == 5) { continue; // Skip appending number 5 to the content } content += $"<p>{i}</p>"; } content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>"; // Use break statement to terminate loop at 7 for (int i = 0; i < 10; i++) { if (i == 7) { break; // Stop appending numbers after 6 } content += $"<p>{i}</p>"; } // Render the HTML content as a PDF document var pdf = await htmlToPdf.RenderHtmlAsPdfAsync(content); pdf.SaveAs("AwesomeIronPDF.pdf"); Console.WriteLine("PDF generated successfully."); } } using System; using System.Threading.Tasks; using IronPdf; class Program { public static async Task Main() { Console.WriteLine("Generate PDF document Using IronPDF"); // Initialize a ChromePdfRenderer to render HTML content to PDF var htmlToPdf = new ChromePdfRenderer(); var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>"; // Use continue statement to build HTML content for (int i = 0; i < 10; i++) { if (i == 5) { continue; // Skip appending number 5 to the content } content += $"<p>{i}</p>"; } content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>"; // Use break statement to terminate loop at 7 for (int i = 0; i < 10; i++) { if (i == 7) { break; // Stop appending numbers after 6 } content += $"<p>{i}</p>"; } // Render the HTML content as a PDF document var pdf = await htmlToPdf.RenderHtmlAsPdfAsync(content); pdf.SaveAs("AwesomeIronPDF.pdf"); Console.WriteLine("PDF generated successfully."); } } Imports System Imports System.Threading.Tasks Imports IronPdf Friend Class Program Public Shared Async Function Main() As Task Console.WriteLine("Generate PDF document Using IronPDF") ' Initialize a ChromePdfRenderer to render HTML content to PDF Dim htmlToPdf = New ChromePdfRenderer() Dim content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>" ' Use continue statement to build HTML content For i As Integer = 0 To 9 If i = 5 Then Continue For ' Skip appending number 5 to the content End If content &= $"<p>{i}</p>" Next i content &= "<h1>Generate Numbers from 1 to 10, stop at 7</h1>" ' Use break statement to terminate loop at 7 For i As Integer = 0 To 9 If i = 7 Then Exit For ' Stop appending numbers after 6 End If content &= $"<p>{i}</p>" Next i ' Render the HTML content as a PDF document Dim pdf = Await htmlToPdf.RenderHtmlAsPdfAsync(content) pdf.SaveAs("AwesomeIronPDF.pdf") Console.WriteLine("PDF generated successfully.") End Function End Class $vbLabelText $csharpLabel 代碼說明 初始化和定義內容:首先,我們定義要包含在PDF中的HTML內容。 使用continue:在第一個循環中,我們使用continue語句在生成1到10的數字時跳過數字5。 使用break:在第二個循環中,我們使用break語句在到達數字7時停止循環。 渲染PDF:我們使用一個ChromePdfRenderer對象將HTML內容轉換為PDF文件並保存。 輸出 最佳實踐和考慮事項 清晰度和可讀性:在大多數情況下,使用結構化控制流語句如break、continue或嵌套循環可以使你的代碼更具可讀性和易於理解。 goto語句可能會使代碼較難追蹤,特別是對於較大的代碼庫或過度使用時。 避免意外後果:誤用goto可能導致代碼呈現菱形,難以判斷程序行為。 使用goto時必須謹慎,並確保其用法清晰且有良好的文件記錄。 錯誤處理:goto的一個常見使用情況是在錯誤處理場景中,它可用來跳轉到清理或錯誤處理程式。然而,現代C#代碼庫通常使用結構化的異常處理(try-catch-finally)進行錯誤處理,這提供了一個更結構化且易於閱讀的方法。 性能考慮:在性能方面,goto通常影響很小。 然而,使用goto的主要關注點是可維護性和可讀性,而非性能。 許可證(試用可用) 探索IronPDF許可證詳細信息。 有開發者試用許可證提供獲取試用許可證。 請按照下圖替換appSettings.json文件中的Key。 { "IronPdf.License.LicenseKey": "The Key Here" } 結論 總之,continue和break方法是控制C#中循環執行的不可或缺的工具。 通過戰略性地將這些語句整合到你的代碼中,可以提高其效率、可讀性和可維護性。 雖然C#中的goto語句提供了一種改變執行流程的機制,但其使用應謹慎。 在大多數情況下,結構化控制流語句如break、continue或嵌套循環提供更清晰和易於維護的解決方案。 然而,在一些特殊的情況下,goto仍可以有效且安全地使用,例如某些錯誤處理場景。 如同任何編程構建一樣,在決定是否使用goto時,必須權衡利弊並考慮代碼的可讀性和可維護性。 Together with IronPDF - Comprehensive PDF Solutions library from Iron Software, developers can gain advanced skills to develop modern applications. 常見問題解答 C# 中的 'continue' 語句如何工作? C# 中的 'continue' 語句在循環中使用,用於跳過當前迭代中剩餘的代碼,直接進入下一次迭代。這對於跳過特定條件或值(如在循環中跳過數字 5)很有用。 在循環中 'break' 語句的作用是什麼? 'break' 語句用於在特定條件滿足時提前退出循環。這有助於在達到某個點(例如到達數字 6 後停止迭代)時停止循環。 什麼時候應該在 C# 中使用 'goto' 語句? 儘管 'goto' 語句允許跳轉到代碼的標籤部分,但由於可能影響可讀性,通常不建議使用。它最好在其他控制結構效率較低或不清晰的特定場景中使用。 如何將 IronPDF 集成到 C# 專案中? IronPDF 可以透過執行命令 dotnet add package IronPdf --version [version_number] 集成到 C# 項目中,以便在各種 .NET 環境中進行 PDF 創建、編輯和轉換。 使用全面的 PDF 庫在 C# 中有什麼好處? 像 IronPDF 這樣的全面 PDF 庫通過提供強大的 PDF 創建、編輯和轉換功能來增強 C# 應用。它支持 HTML 到 PDF 的轉換,並提供跨平台支持,使其成為開發者的一個多功能工具。 控制流程語句如何提升 C# 中的 PDF 生成? 控制流程語句如 'continue' 和 'break' 可用於在 PDF 生成期間管理循環的執行,允許開發者在使用 IronPDF 時根據特定條件選擇性地添加或停止內容生成。 IronPDF 的相容性特性有哪些? IronPDF 兼容各種 .NET 版本,包括 .NET Core、.NET Standard 和 .NET Framework。它支持多種語言如 C#、VB.NET 和 F#,並與如 Microsoft Visual Studio 和 JetBrains Rider 等 IDE 集成。 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時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 Html Agility Pack C#(對於開發者的運行原理)Bugsnag C#(對於開發者的運...