C# の foreach ループは、配列またはリストである可能性のある項目のコレクションを繰り返し処理します。forloop の実行時に項目のコレクションに対してコード ブロックが実行され、コレクション内の項目を通過し、最後に 1 つずつ表示されます。 1 つ。
構文:
foreach(dataType variableName in collection variable) { // codeblock }
上記の構文では、variableName はコレクション内の現在の要素を保持します。コレクション変数は、反復処理されて 1 つずつ表示されるリスト項目のコレクションを持つインターフェイス IEnumerable を実装するデータ構造を定義します。 codeBlock には、ループ内で実行されるロジックが含まれています。
foreach ループ処理の流れを見てみましょう。
foreach ループの作業プロセスでは、コレクション内の要素を反復処理しますが、foreach ループを使用する場合はステートメントを中括弧 {} で囲むことが必須です。ループカウンター変数の変数を宣言する場合、配列の基本型と同じ型を宣言できます。
例:
foreach(int items in arrayValues) { Console.WriteLine(items); }
キーワードは項目を反復するために foreach ループで使用され、キーワードは毎回の反復から項目を選択し、変数要素に保存します。最初の反復では、反復の開始項目が要素に保存され、2 番目の反復では次の要素が選択されます。 foreach ループは、配列またはリスト内の要素の数と同じ数だけ実行されます。
次のように for ループと foreach ループの違いを見てみましょう。
foreach ループでは、goto、return、break、throw ステートメントを使用してループを停止および終了できるコード スニペットも確認できます。数値が 12 に等しくなったらコードの実行を終了する例を見てみましょう。
using System; class Program { static void Main(string[] args) { Console.WriteLine("foreach loop Sample!"); int[] oddArray = new int[] { 2,4,6,8,10,12,14,16,18,20 }; // Loop through array items foreach (int num in oddArray) { Console.WriteLine(num); // it don't read the number after 12 if (num == 12) break; } Console.ReadKey(); } }
for ループの別の例です。文字列内の文字を見つける必要がある場合は、foreach ループを使用して文字列内の文字を一度に 1 文字ずつ確認します。文字列から文字の配列を作成し、1 文字だけを読み取ります。同時に、文字間の空白も確実に省略されます。
// Reads one character at a time and it skips the process if space comes string data = "C# Programming"; // it convert the string into an array of chars char[] _array = data .ToCharArray(); // display one char at a time foreach (char item in _array) { if (item.ToString() != " ") Console.WriteLine(item); }
これは、文字列内のコレクションに foreach ループを使用して、文字列内の文字の出現数を見つけることを示しています。
string _string = "Latest C# Programming :Language"; char[] _charArray = _string.ToCharArray(); int _count = 0; // Loop through chars and find all 'n' and count them foreach (char item in charArray ) { if (item == 'a') _count++; } Console.WriteLine($"Total n found {_count}");
この例では、foreach ループを使用して、すべての文字列を一度に 1 つずつ読み取って表示する文字列の配列を作成します。
// Array of name list in string string[] nameList = new string[] { "Chand", "Leo", "Smith", "Allen", "Rick" }; // Loop through array and read all authors foreach (string item in nameList ) { Console.WriteLine(item ); }
foreach ループのプログラム サンプルを見てみましょう。次のプログラムは、foreach ループを使用して配列要素の反復を示しています。
コード:
using System; class Program_1 { // Main Method public static void Main(string[] args) { Console.WriteLine("Display Elements"); // creating an array char[] _arrayList={'L','O','O','P','I','N','G'}; // it execute the loop till the last appearance of element in the array foreach(char items in _arrayList) { Console.WriteLine(items); } } }
出力:
コード:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Program_2 { class Program_2 { static void Main(string[] args) { string[] data = new string[5]; // declaring array //Storing value in array element data[0] = "Java"; data[1] = "DotNet"; data[2] = "PHP"; data[3] = "SQL SERVER"; data[4] = "ANDROID"; //retrieving value using foreach loop foreach (string items in data) { Console.WriteLine("Welcome " + items); } //Console.ReadLine(); } } }
出力:
配列を使用した foreach の上記の例と同様に、リスト オブジェクトのループを使用して、リスト オブジェクト内の要素にアクセスできます。 foreach ループを使用してリスト要素を反復処理する次の例を見てみましょう。
コード:
using System; using System.Collections.Generic; namespace Program_3 { class Program_3 { static void Main(string[] args) { List<string> nameList = new List<string>() { "Smith", "Steve", "Gates" }; foreach (string name in name list) { Console.WriteLine(name); } Console.WriteLine("Press Enter Key to Exit.."); } } }
出力:
コード:
using System; class Program_4 { // Main Method public static void Main(String[] arg) { { int[] codes = { 135, 142, 75, 106, 100 }; int newCodes = HighestCodes(codes); Console.WriteLine("New Code is " + newCodes); } } // method to find HighestCodes public static int HighestCodes(int[] values) { int _num = values[0]; // for each loop foreach (int item in values) { if (item > _num) { _num = item; } } return _num; } }
出力:
この記事の最後では、foreach ループの仕組みと配列のコレクションの値にアクセスする方法について学び、理解しやすいように構文とフローチャートを分析しました。ループに関する記事を理解していただけたでしょうか。
以上がC# foreach ループの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。