.NETヘルプ C# For Loop (開発者向けの仕組み) Curtis Chau 更新日:6月 20, 2025 Download IronPDF NuGet Download テキストの検索と置換 テキストと画像のスタンプ 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 この包括的なチュートリアルでは、public static void Main メソッド内で for ループを始めるために知っておくべきすべてをカバーします。 for ループ、ループ変数、ループ本体、繰り返し変数、内側と外側のループ、無限ループ、ブール式、ネストされたループなどを探索します。 さあ、始めましょう! for ループの始め方 C# では for ループは、反復回数が正確にわかっている場合に特に設計されたループの一種です。 C# における for ループの構文は以下のコードブロックに示されています: for (initialization; condition; increment) { // Loop body } for (initialization; condition; increment) { // Loop body } initialization Do While condition ' Loop body increment Loop $vbLabelText $csharpLabel for ループのコンポーネントを分解してみましょう: 初期化: ここでループ変数、または繰り返し変数が宣言され、初期化されます。 条件: ループが複数回ステートメントを実行し続けるべきかどうかを決定するブール/条件式です。 増加: 各反復後に反復変数を更新するステートメントです。 Static Void Main とループ変数 C# では、static void Main メソッドまたは static void Main(String []args) はアプリケーションのエントリーポイントです。 ここからプログラムの実行が開始されます。 ここに static void Main メソッド内での for ループの使い方の例があります: using System; class Program { static void Main() { for (int i = 0; i < 5; i++) { Console.WriteLine("This is the first for loop!"); } } } using System; class Program { static void Main() { for (int i = 0; i < 5; i++) { Console.WriteLine("This is the first for loop!"); } } } Imports System Friend Class Program Shared Sub Main() For i As Integer = 0 To 4 Console.WriteLine("This is the first for loop!") Next i End Sub End Class $vbLabelText $csharpLabel この例では、ループ変数 int i が 0 に初期化され、変数として機能します。 ループは i が 5 未満である限り実行を続けます。 各反復の後、増分操作 i++ により i の値が 1 増加します。 ネストされたループの探求 ネストされたループは、他のループの中に配置されたループで、内側と外側のループにイテレーターセクションがあります。 これらは、行列のような多次元データ構造を扱うとき、またはすべての要素の組み合わせに対して特定の操作を行う必要があるときに有用です。 ここに、外側のループ内に内側のループがあるネストされた for ループの C# の例があります: for (int i = 0; i < 3; i++) { for (int j = 0; j < 2; j++) { Console.WriteLine($"i: {i}, j: {j}"); } } for (int i = 0; i < 3; i++) { for (int j = 0; j < 2; j++) { Console.WriteLine($"i: {i}, j: {j}"); } } For i As Integer = 0 To 2 For j As Integer = 0 To 1 Console.WriteLine($"i: {i}, j: {j}") Next j Next i $vbLabelText $csharpLabel この例では、外側のループが実行され、i が 0 に等しい状態で開始します。その後、内側のループは j のすべての可能な値を反復し、その後次の i の値に進みます。 無限ループとループ制御 無限ループは、そのテスト条件が決して偽にならないために終了しないループです。 これらは危険であり、プログラムが無期限にハングする可能性があります。 ループの終了条件が最終的に満たされることを確認するために、while ループや foreach ループなどを書くときは注意が必要です。 以下は、C# で特定の条件が指定されていない無限ループの例です。 // This is an example of an infinite loop for (int i = 0; ; i++) { Console.WriteLine("This loop will run forever!"); } // This is an example of an infinite loop for (int i = 0; ; i++) { Console.WriteLine("This loop will run forever!"); } ' This is an example of an infinite loop Dim i As Integer = 0 Do Console.WriteLine("This loop will run forever!") i += 1 Loop $vbLabelText $csharpLabel 標準の for ループ構造に加えて、C# はループをより効果的に管理するために break や continue といったループ制御ステートメントも提供します。 break: このステートメントはループを即座に終了するために使用されます。break ステートメントに出会うと、ループは終了し、プログラムはループの外の次のコード行を続けます。 continue: このステートメントはループ本体内の現在の反復用の残りのコードをスキップして、次の反復にジャンプするために使用されます。 ここに、for ループにおける break と continue の使用を示す例があります: for (int i = 0; i < 10; i++) { if (i == 5) { break; // Exits the loop when i is equal to 5 } if (i % 2 == 0) { continue; // Skips even numbers } Console.WriteLine($"Odd number: {i}"); } for (int i = 0; i < 10; i++) { if (i == 5) { break; // Exits the loop when i is equal to 5 } if (i % 2 == 0) { continue; // Skips even numbers } Console.WriteLine($"Odd number: {i}"); } For i As Integer = 0 To 9 If i = 5 Then Exit For ' Exits the loop when i is equal to 5 End If If i Mod 2 = 0 Then Continue For ' Skips even numbers End If Console.WriteLine($"Odd number: {i}") Next i $vbLabelText $csharpLabel この例では、i が 5 に達すると、ループが終了します。 continue ステートメントは偶数をスキップするために使用され、5 未満の奇数のみが出力されます。 ブール式とループ条件 ループ条件は、ループが実行を続けるべきかどうかを決定するブール式です。 この式は各反復の前に評価され、式が true の場合にのみループが実行されます。 多くのループでよく使用されるブール式には以下があります: 比較: i < 10, i >= 10, i > 10, i == 10, i != 10 論理演算子: && (AND), || (OR), ! (NOT) 論理演算子を使って複数の式を組み合わせて、より複雑なループ条件を作成できます。 例えば: for (int i = 0; i < 10 && i != 5; i++) { Console.WriteLine(i); } for (int i = 0; i < 10 && i != 5; i++) { Console.WriteLine(i); } Dim i As Integer = 0 Do While i < 10 AndAlso i <> 5 Console.WriteLine(i) i += 1 Loop $vbLabelText $csharpLabel この例では、i が 10 未満で、5 と等しくない限り、ループは実行されます。 コードブロックとループ本体 コードブロックは、波括弧 {} で囲まれた一連のステートメントです。 for ループでは、ループ宣言に続くコードブロックがループ本体として知られています。 ここに、ループの各反復で実行したいコードを配置します。 for (int i = 0; i < 5; i++) { // This is the loop body Console.WriteLine($"Iteration: {i}"); } for (int i = 0; i < 5; i++) { // This is the loop body Console.WriteLine($"Iteration: {i}"); } For i As Integer = 0 To 4 ' This is the loop body Console.WriteLine($"Iteration: {i}") Next i $vbLabelText $csharpLabel この例では、ループ本体は現在の反復番号を出力する Console.WriteLine ステートメントの 1 つで構成されています。 ループ実行ステップ コードに for ループが出現すると、以下の一連のイベントが発生します: ループ変数が初期化されます。 ブール式が評価されます。 式が false である場合、ループはスキップされ、プログラムはループの外の次のコード行を続けます。 式が true である場合、ループ本体が実行されます。 ループ変数が増加または更新されます。 ステップ2-4がブール式が false になるまで繰り返されます。 IronPDF を使用した For ループによるレポート生成の統合 IronPDF のPDF生成機能について学び、C# で動的で強力なPDFレポートを作成します。 特に、ループ内で処理されたデータに基づいて動的なレポートやドキュメントを作成する必要がある場合、for ループで作業するときに役立つツールです。 このセクションでは、C# for ループと連携して IronPDF を使用して簡単なレポートを生成する方法を示します。 まず、IronPDF の NuGet パッケージをインストールする必要があります。 Visual Studio のパッケージマネージャーコンソールを使用してこれを行うことができます: Install-Package IronPdf IronPDF をインストールしたら、for ループを使用して数値とその平方を含むテーブルを含む HTML から IronPDF を使用して PDF レポート を生成する簡単な例を作成しましょう。 ステップ 1: 必要な名前空間を追加します。 using IronPdf; using System.IO; using IronPdf; using System.IO; Imports IronPdf Imports System.IO $vbLabelText $csharpLabel ステップ 2: GenerateReport という新しいメソッドを作成します。 static void GenerateReport() { // Create an HTML template for the report var htmlTemplate = @" <html> <head> <style> table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid black; padding: 8px; text-align: center; } </style> </head> <body> <h1>Number Squares Report</h1> <table> <thead> <tr> <th>Number</th> <th>Square</th> </tr> </thead> <tbody> {0} </tbody> </table> </body> </html>"; // Generate the table rows using a for loop string tableRows = ""; for (int i = 1; i <= 10; i++) { tableRows += $"<tr><td>{i}</td><td>{i * i}</td></tr>"; } // Insert the generated table rows into the HTML template string finalHtml = string.Format(htmlTemplate, tableRows); // Create a new PDF document from the HTML using IronPdf var pdf = new IronPdf.ChromePdfRenderer(); var document = pdf.RenderHtmlAsPdf(finalHtml); // Save the PDF to a file document.SaveAs("NumberSquaresReport.pdf"); } static void GenerateReport() { // Create an HTML template for the report var htmlTemplate = @" <html> <head> <style> table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid black; padding: 8px; text-align: center; } </style> </head> <body> <h1>Number Squares Report</h1> <table> <thead> <tr> <th>Number</th> <th>Square</th> </tr> </thead> <tbody> {0} </tbody> </table> </body> </html>"; // Generate the table rows using a for loop string tableRows = ""; for (int i = 1; i <= 10; i++) { tableRows += $"<tr><td>{i}</td><td>{i * i}</td></tr>"; } // Insert the generated table rows into the HTML template string finalHtml = string.Format(htmlTemplate, tableRows); // Create a new PDF document from the HTML using IronPdf var pdf = new IronPdf.ChromePdfRenderer(); var document = pdf.RenderHtmlAsPdf(finalHtml); // Save the PDF to a file document.SaveAs("NumberSquaresReport.pdf"); } Shared Sub GenerateReport() ' Create an HTML template for the report Dim htmlTemplate = " <html> <head> <style> table { border-collapse: collapse; width: 100%; } th, td { border: 1px solid black; padding: 8px; text-align: center; } </style> </head> <body> <h1>Number Squares Report</h1> <table> <thead> <tr> <th>Number</th> <th>Square</th> </tr> </thead> <tbody> {0} </tbody> </table> </body> </html>" ' Generate the table rows using a for loop Dim tableRows As String = "" For i As Integer = 1 To 10 tableRows &= $"<tr><td>{i}</td><td>{i * i}</td></tr>" Next i ' Insert the generated table rows into the HTML template Dim finalHtml As String = String.Format(htmlTemplate, tableRows) ' Create a new PDF document from the HTML using IronPdf Dim pdf = New IronPdf.ChromePdfRenderer() Dim document = pdf.RenderHtmlAsPdf(finalHtml) ' Save the PDF to a file document.SaveAs("NumberSquaresReport.pdf") End Sub $vbLabelText $csharpLabel Program.cs ファイルから GenerateReport メソッドを呼び出します: GenerateReport(); GenerateReport(); GenerateReport() $vbLabelText $csharpLabel この例を実行すると、"NumberSquaresReport.pdf" という名前のPDFレポートがアプリケーションの出力ディレクトリに生成されます。 レポートには、1から10までの数とそれらの平方を含むテーブルが含まれ、C# for ループを使用して生成されます。 結論 結論として、この包括的なチュートリアルは、C# for ループとそれに関連する概念のしっかりした基礎を提供しました。ループ変数、ループ本体、繰り返し変数、内側と外側のループ、無限ループ、ブール式、コードブロック、ネストされたループを探求し、for ループを使用して動的なPDFレポートを生成するための強力な IronPDF ライブラリの統合方法も示しました。 IronPDF は、その機能をテストするための IronPDF の無料トライアル を提供しており、これが役立つと感じた場合、ライセンスはあなたのニーズに合った手頃なオプションから始まります。 よくある質問 C#のforループはどのように機能しますか? C#のforループは、指定した回数コードのブロックを繰り返し実行するために使用されます。それは、ループの実行を制御する初期化、条件、およびインクリメントという3つの主要部分で構成されています。 'static void Main'メソッドのC#での役割は何ですか? 'static void Main'メソッドは、C#アプリケーションのエントリーポイントとして機能します。プログラムが実行を開始する場所であり、さまざまなタスクを実行するためにforループのような初期コードを含むことがよくあります。 C#でforループを使用してPDFレポートを生成するにはどうすればよいですか? IronPDFのようなライブラリを使用して、C#でPDFレポートを生成することができます。forループはデータを処理し、テーブルやレポートにフォーマットするために利用でき、これはIronPDFを使用してPDFドキュメントとしてレンダリングできます。 ネストされたループとは何ですか、そしてそれらはC#でどのように機能しますか? C#でのネストされたループは、他のループの内部に配置されたループです。これらは、多次元データ構造を扱うのに特に便利で、要素の組み合わせに対して操作を実行することができます。 C#で無限ループを防ぐにはどうすればよいですか? 無限ループを防ぐには、ループの条件が最終的に偽になることを確実にします。特定の条件が満たされたときにループを終了するために、'break'のようなループ制御ステートメントを利用してください。 C#のループで使用される'break'と'continue'ステートメントは何に使われますか? C#において、'break'ステートメントはループを直ちに抜けるために使用され、'continue'ステートメントは現在の反復をスキップし、次の反復を続行します。 forループ内でのブール式はどのように機能しますか? forループ内のブール式は、ループが実行を続けるべきかどうかを決定します。これらは各反復の前に評価され、ループを続行するためにはtrueを返す必要があります。 forループと併用するためにC#ライブラリをインストールするにはどうすればよいですか? 適切なインストールコマンドを使用してVisual Studioのパッケージマネージャーコンソールを介してC#ライブラリをインストールすることができ、それによりforループ内でその機能を活用することが可能になります。 Curtis Chau 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 更新日 9月 4, 2025 RandomNumberGenerator C# RandomNumberGenerator C#クラスを使用すると、PDF生成および編集プロジェクトを次のレベルに引き上げることができます 詳しく読む 更新日 9月 4, 2025 C# String Equals(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む 更新日 8月 5, 2025 C# Switch Pattern Matching(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む C# Wait For Seconds (開発者向けの仕組み)C# String Replace (開発者向け...
更新日 9月 4, 2025 RandomNumberGenerator C# RandomNumberGenerator C#クラスを使用すると、PDF生成および編集プロジェクトを次のレベルに引き上げることができます 詳しく読む
更新日 9月 4, 2025 C# String Equals(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む
更新日 8月 5, 2025 C# Switch Pattern Matching(開発者向けの仕組み) 強力なPDFライブラリであるIronPDFと組み合わせることで、switchパターンマッチングは、ドキュメント処理のためのよりスマートでクリーンなロジックを構築できます 詳しく読む