int[][] myArray = new int[10][];
foreach (int[] eachArray in myArray) {
eachArray = new int[2]
}
次の配列を作成する必要があると思います
{ 0 , 0 }
{0 , 0}
.........
ギザギザの配列が紛らわしい……。
int[][] myArray = new int[10][];
foreach (int[] eachArray in myArray) {
eachArray = new int[2]
}
次の配列を作成する必要があると思います
{ 0 , 0 }
{0 , 0}
.........
ギザギザの配列が紛らわしい……。
これにより、探しているギザギザの配列は作成されません。int[2]
元の配列のスロットではなく、反復変数に新しいインスタンスを割り当てようとしています。readonly
反復変数はコンパイラーによって扱われるため、これはコンパイルされません。
これを行う方法は、forループを使用することです
for (var i = 0; i < myArray.Length; i++) {
myArray[i] = new int[2];
}
ループ内のループ変数への割り当てforeach
は許可されていません。カウンター付きの通常のfor
ループが必要です。または、少し凝ったものを試すこともできます。
int[][] myArray = Enumerable.Range(0, 10).Select(i => new int[2]).ToArray();