ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
制御フロー文はプログラミングにおいて非常に重要です。それはプログラム内の命令の実行順序を決定するからです。 C#では、ループを制御するための基本文として「continue」、「break」、および「goto」の3つがあります。 これらの文はプログラマーにループ内の実行フローを変更する能力を提供し、コードの効率と可読性を向上させます。 この記事では、C#のcontinueおよびbreakメソッドの詳細について掘り下げ、その構文、適用例、ベストプラクティスを探ります。 記事の後半では、次のことについても学びますIronPDF - 堅牢なC# PDFライブラリからIron SoftwarePDFドキュメントの読み書きを行うために。
continue 文は、ループ構造内で使用され、残りのコードブロックをスキップしてループの次の繰り返しに進むために使用されます。これにより、プログラムの制御が現在の繰り返しの残りのコードをスキップして次の繰り返しに移動するよう指示されます。
continue;
continue;
continue
public class Program
{
public static void Main()
{
Console.WriteLine("Demonstrate Continue Method in C#");
Console.WriteLine("Print 1 to 10 skip 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 skip 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 skip 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
この例では、i が 5 の場合、continue 文が実行され、その反復のループ内の残りのコードがスキップされます。 その結果、数字5は印刷されず、ループは次の反復処理に進みます。
継続(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
この例では、ループがnumbers配列を反復処理します。 それが数字6に出会うと、break文が実行され、ループが早期に終了します。 その結果、1から5までの数字のみが印刷されます。
C#のgotoステートメントは、同じメソッド内、同じスイッチステートメント内、または同じループ内の指定されたラベルに制御を移す方法を提供します。gotoはジャンプステートメントの実行フローを変更する強力なツールになり得ますが、コードの可読性や保守性が低下する可能性があるため、現代のプログラミング慣行においては使用が控えられることが多いです。 しかし、gotoが効果的かつ安全に使用される状況もあります。
C#におけるgoto文の構文は簡単です:
goto label;
goto label;
GoTo label
ラベルが識別子の後にコロンで続く場合(:)コードのターゲット位置を示します。
特定の条件が満たされた場合に、ネストされたループを早期に終了したいと考えているシナリオを考えてください。 これを実現するには、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.")
この例では、条件 i * j > 10 が満たされたときに goto 文が制御を exitLoop ラベルに移し、ネストされたループを実質的に抜け出します。
IronPDFIron 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 Core、.NET Standard、.NET Frameworkを含むさまざまな.NETバージョンで実行されます。 これはまた、Java、Node.js、およびPythonでも利用できます。
互換性と環境:
.NETバージョン:C#、VB.NET、およびF#をサポートします。
プロジェクトタイプ: Webと連携(Blazor & WebForms (ブレイザー & ウェブフォーム))デスクトップ(WPF & MAUI)およびコンソールアプリケーション。
アプリケーション環境: Windows、Linux、Mac、Docker、Azure、AWS などに対応。
IDEs: Microsoft Visual StudioおよびJetBrains Riderとシームレスに統合されます。
PDF標準と編集:
さまざまなPDFバージョンに対応(1.2 - 1.7), PDF/UA、およびPDF/A.
PDFファイルのプロパティ設定、セキュリティ、および圧縮を行います。
メタデータ、リビジョン履歴、および文書構造を編集する。
パフォーマンス最適化:
効率的なPDF生成のための完全なマルチスレッドおよび非同期サポート。
IronPDFライブラリについて理解したところで、IronPDFとcontinueステートメント、breakステートメント、gotoステートメントを使用するアプリケーションを書いてみましょう。
まずは、Visual Studio コンソール アプリケーションを作成しましょう。
プロジェクト名と場所を提供してください。
次のステップとして、必要な .NET バージョンを選択し、[作成] をクリックしてください。
以下のコマンドを使用してIronPDFをインストールします。
dotnet add package IronPdf --version 2024.4.2
では、制御文を使用してPDFドキュメントを生成しましょう。
using System;
using System.Threading.Tasks;
using System.Diagnostics;
using IronPdf;
class Program
{
public static async Task Main()
{
Console.WriteLine("Generate PDF document Using IronPDF");
var htmlToPdf = new ChromePdfRenderer();
var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>";
for (int i = 0; i < 10; i++)
{
if (i == 5)
{
continue;
}
content += $"<p>{i}</p>";
}
content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>";
for (int i = 0; i < 10; i++)
{
if (i == 7)
{
break;
}
content += $"<p>{i}</p>";
}
var pdf = htmlToPdf.RenderHtmlAsPdf(content);
pdf.SaveAs("AwesomeIronPDF.pdf");
Console.WriteLine("PDF generated successfully.");
}
}
using System;
using System.Threading.Tasks;
using System.Diagnostics;
using IronPdf;
class Program
{
public static async Task Main()
{
Console.WriteLine("Generate PDF document Using IronPDF");
var htmlToPdf = new ChromePdfRenderer();
var content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>";
for (int i = 0; i < 10; i++)
{
if (i == 5)
{
continue;
}
content += $"<p>{i}</p>";
}
content += "<h1>Generate Numbers from 1 to 10, stop at 7</h1>";
for (int i = 0; i < 10; i++)
{
if (i == 7)
{
break;
}
content += $"<p>{i}</p>";
}
var pdf = htmlToPdf.RenderHtmlAsPdf(content);
pdf.SaveAs("AwesomeIronPDF.pdf");
Console.WriteLine("PDF generated successfully.");
}
}
Imports System
Imports System.Threading.Tasks
Imports System.Diagnostics
Imports IronPdf
Friend Class Program
Public Shared Async Function Main() As Task
Console.WriteLine("Generate PDF document Using IronPDF")
Dim htmlToPdf = New ChromePdfRenderer()
Dim content = "<h1>Generate Numbers from 1 to 10, skip 5</h1>"
For i As Integer = 0 To 9
If i = 5 Then
Continue For
End If
content &= $"<p>{i}</p>"
Next i
content &= "<h1>Generate Numbers from 1 to 10, stop at 7</h1>"
For i As Integer = 0 To 9
If i = 7 Then
Exit For
End If
content &= $"<p>{i}</p>"
Next i
Dim pdf = htmlToPdf.RenderHtmlAsPdf(content)
pdf.SaveAs("AwesomeIronPDF.pdf")
Console.WriteLine("PDF generated successfully.")
End Function
End Class
最初に、PDFドキュメントで使用するコンテンツを作成しています。
私たちはコンテンツをHTMLドキュメントとして準備します。
forループの中でcontinueステートメントを使用して、1から10までを表示し、5をスキップします。
また、1から7までを印刷してブレークするためにbreakステートメントを使用します。
明確さと可読性: ほとんどの場合、break、continue、またはネストされたループのような構造化された制御フロー文を使用することで、コードがより読みやすく理解しやすくなります。 goto 文は、大規模なコードベースや過度に使用された場合、コードの追跡を難しくすることがあります。
意図しない結果を避ける: gotoを誤って使用すると、スパゲッティコードが生じ、プログラムの挙動を理解するのが難しくなる可能性があります。 goto を賢明に使用し、その使用が明確で十分に文書化されていることを確認することが重要です。
エラーハンドリング: goto の一般的な使用例の一つは、エラーハンドリングのシナリオで、クリーンアップやエラーハンドリングのルーチンにジャンプするために使用されます。しかし、現代のC#コードベースでは、構造化例外処理がよく使われます。(try-catch-finally)エラーハンドリングには、より構造化され読みやすいアプローチを提供します。
試用開発者トライアルライセンスが利用可能です。トライアルライセンスを取得.
appSettings.jsonファイルに示されているKeyを置き換えてください。
{
"IronPdf.License.LicenseKey": "The Key Here"
}
結論として、continue メソッドと break メソッドは、C#のループ実行を制御する上で不可欠なツールです。 これらのステートメントをコードに戦略的に組み込むことで、その効率性、可読性、および保守性を向上させることができます。 C#のgotoステートメントは、実行の流れを変更するためのメカニズムを提供しますが、その使用は慎重に行うべきです。 ほとんどの場合、break、continue、またはネストされたループのような構造化された制御フロー文は、よりわかりやすく、保守しやすいソリューションを提供します。 ただし、特定のエラー処理の状況などで、gotoが効果的かつ安全に使用できるニッチなシナリオがあります。 他のプログラミング構造と同様に、gotoを使用するかどうかを決定する際には、トレードオフを慎重に評価し、コードの可読性と保守性を考慮することが重要です。
一緒にIronPDF - 包括的なPDFソリューション以下の内容を日本語に翻訳してください:
のライブラリIron SoftwarePDFドキュメントの読み取りおよび生成のために、開発者は現代的なアプリケーションを開発するための高度なスキルを身に付けることができます。
9つの .NET API製品 オフィス文書用