配列での foreach の使用 (C# プログラミング ガイド)
foreach ステートメントでは、配列の要素の反復処理を、簡単かつ安全に行うことができます。
1 次元配列の場合、foreach
ステートメントは、インデックス 0 から始まりインデックス Length - 1
で終わるインデックスの昇順で要素を処理します。
int[] numbers = { 4, 5, 6, 1, 2, 3, -2, -1, 0 };
foreach (int i in numbers)
{
System.Console.Write("{0} ", i);
}
// Output: 4 5 6 1 2 3 -2 -1 0
多次元配列の場合、右端の次元のインデックスが最初に加算されていき、次にその左の次元、またその左、というような方法で各要素がトラバースされます。
int[,] numbers2D = new int[3, 2] { { 9, 99 }, { 3, 33 }, { 5, 55 } };
// Or use the short form:
// int[,] numbers2D = { { 9, 99 }, { 3, 33 }, { 5, 55 } };
foreach (int i in numbers2D)
{
System.Console.Write("{0} ", i);
}
// Output: 9 99 3 33 5 55
ただし、多次元配列では、入れ子になった for ループを使用した方が、配列要素を処理する順序をより厳密に制御できます。