透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
この包括的なチュートリアルでは、public static void Main
メソッド内でforループを始めるために必要なすべての知識をカバーします。 forループ、ループ変数、ループ本体、反復変数、内側ループと外側ループ、無限ループ、ブール式、入れ子ループなどについて説明します。 さあ、始めましょう!
for
ループはC#におけるループの一種であり、特に何回反復するかが正確にわかっている場合に設計されています。 C# での for
ループの構文は、以下のコードブロックに示されています。
for (initialization; condition; increment)
{
// Loop body
}
for (initialization; condition; increment)
{
// Loop body
}
initialization
Do While condition
' Loop body
increment
Loop
forループのコンポーネントを分解してみましょう:
初期化:これはループ変数または反復変数が宣言され、初期化されるところです。
条件: ループが複数回ステートメントを実行し続けるべきかどうかを決定するブール/条件式。
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
この例では、ループ変数int i
は0に初期化され、変数として機能します。 i
が 5
未満である限り、ループは実行を続けます。 各イテレーションの後、インクリメント操作i++
はi
の値を1増加させます。
C#のネストされたループは、他のループの内側に配置されるループであり、イテレータセクションを持つ内側のループと外側のループを形成します。 これらは、行列のような多次元データ構造を扱うときや、要素の組み合わせごとに特定の操作を実行する必要があるときに役立ちます。
以下は、C#の外側ループの中に内側ループがある、入れ子になったforループの例です:
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
この例では、外側のループが実行され、i
が 0 から始まります。内側のループは、その後、次の i
の値に進む前に、すべての可能な j
の値を反復処理します。
無限ループとは、テスト条件が決してfalseにならないために終了しないループのことです。 これらは危険であり、プログラムが無期限にハングする原因となる可能性があります。 ループ(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
標準の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
この例では、i
が 5
に達するとループの実行が止まります。 continue
ステートメントは偶数をスキップするために使用され、5
未満の奇数のみが表示されます。
ループ条件は、ループを実行し続けるかどうかを決定するブール値です。 この式は各反復の前に評価され、式がtrue
の場合にのみループが実行されます。 多くのループで一般的に使用されるブール式には次のものがあります:
i < 10
, i >= 10
, i >= 10
, i == 10
, i != 10
論理演算子: &&
(AND), **
**(または)、**
!`**(ではない)
複数の式を論理演算子を使用して組み合わせることで、より複雑なループ条件を作成できます。 例えば:
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
この例では、ループは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
この例では、ループ本体は現在の繰り返し番号を出力する単一のConsole.WriteLine
ステートメントで構成されています。
コード内でforループに出会うと、次のイベントのシーケンスが発生します:
ループ変数が初期化されます。
ブール式が評価されます。 式がfalse
の場合、ループはスキップされ、プログラムはループ外の次のコード行に進みます。
式がtrue
の場合、ループ本体が実行されます。
ループ変数がインクリメントまたは更新されます。
false
になるまで繰り返されます。IronPDFのPDF生成機能について学ぶことで、C#で動的で強力なPDFレポートを作成できます。 ループの作業時、特にループ内で処理されたデータに基づいて動的なレポートやドキュメントを作成する必要がある場合に有用なツールとなります。 このセクションでは、C#のforループとIronPDFを組み合わせて簡単なレポートを生成する方法を紹介します。
まず、IronPDF NuGetパッケージをインストールする必要があります。 Visual Studioのパッケージマネージャーコンソールを使用してこれを行うことができます:
Install-Package IronPDF
Install-Package IronPDF
IronPDFをインストールしたら、IronPDFを使用してHTMLからPDFレポートを生成するシンプルな例を作成しましょう。これは、forループを使用して数字とその二乗の表を含むものです。
ステップ1: 必要な名前空間を追加します。
using IronPdf;
using System.IO;
using IronPdf;
using System.IO;
Imports IronPdf
Imports System.IO
ステップ 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 two variables
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 two variables
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 two variables
Dim pdf = New IronPdf.ChromePdfRenderer()
Dim document = pdf.RenderHtmlAsPdf(finalHtml)
' Save the PDF to a file
document.SaveAs("NumberSquaresReport.pdf")
End Sub
GenerateReport
メソッドを Program.cs ファイルから呼び出します。
GenerateReport();
GenerateReport();
GenerateReport()
この例を実行すると、アプリケーションの出力ディレクトリに「NumberSquaresReport.pdf」という名前のPDFレポートが生成されます。 レポートには、C#のforループを使用して生成された1から10までの数とその平方の表が含まれます。
結論として、この包括的なチュートリアルは、C#のforループとその関連概念に関する堅固な基礎を提供しました。ロープ変数、ループ本体、イテレーション変数、内側および外側のループ、無限ループ、ブール式、コードブロック、ネストされたループを探求し、forループを使用して動的なPDFレポートを生成するための強力なIronPDFライブラリの統合方法も示しました。
IronPDFは、その機能を試すためのIronPDFの無料トライアルを提供しており、役立つと感じた場合は、ニーズに合った手頃な価格のオプションからライセンスを購入できます。