[英]how can I partially initialize a 3D array in C#?
I need to initialise a 3 level array, I know the size of the 2 first levels but the last one is determined randomly and varies from array to array. 我需要初始化一个3级数组,我知道前2个级别的大小,但最后一个级别是随机确定的,并且随数组的不同而不同。
int[,,] myArray;
How can I initialise the 2 first levels yet leave the last one untouched ? 我该如何初始化前两个级别而又不影响最后一个?
myArray = new int[sizeA, sizeB, ???];
Eg, array 3 x 5 x Variable_size: 例如,数组3 x 5 x Variable_size:
int[][][] myArray = new int[3][][];
for (int i = 0; i < 3; i++)
myArray[i] = new int[5][];
myArray[0][0] = new int[5];
myArray[0][1] = new int[6];
myArray[0][2] = new int[3];
myArray[0][3] = new int[2];
myArray[0][4] = new int[7];
myArray[1][0] = new int[3];
//...
myArray[2][4] = new int[9];
or 要么
int[,][] myArray = new int[3,5][];
myArray[0, 0] = new int[3];
myArray[0, 1] = new int[5];
myArray[0, 2] = new int[2];
myArray[0, 3] = new int[4];
myArray[0, 4] = new int[6];
myArray[1, 0] = new int[3];
//...
myArray[2, 4] = new int[8];
Usage accordingly: 用法相应:
myArray[0][1][3] = 5;
int a = myArray[1][0][2];
or 要么
myArray[0, 1][3] = 5;
int a = myArray[1, 0][2];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.