我基本上想将包含从numericUpDowns获取的学生成绩的创建数组放入2D数组的第一个索引中,因此,如果我创建了另一个学生,则第一个学生的成绩将不会被替换,因为我会将第二个学生的成绩在我的2D数组的第二个索引中,并调用此索引。
我创建并初始化了一个数组,该数组包含5个索引,每个索引具有1个等级,我尝试为2D array[i][0]
(当然带有a)赋予整个等级数组的值
static NumericUpDown[] tabGrades = new NumericUpDown[5];
NumericUpDown[][] tempGrades = new NumericUpDown[tabGrades.Length][];
...
for (int i = 0; i < tempGrades.Length; i++)
{
tempGrades[i][0] = tabGrades[];
break;
}
我希望我的2D数组简单地将其作为第一个索引值,但它却告诉我语法错误和“;”丢失
答案 0 :(得分:0)
tempGrades[i][0]
代表2D数组的单个元素,其类型为NumericUpDown
,而您正试图为其分配数组,这是错误的。您需要做的是将数组分配给tempGrades[i]
,它将代表2D数组中的一行(1D数组)。因此您的代码看起来像tempGrades[i][0] = tabGrades;
。您的代码还有其他问题,例如:
在初始化它们时应定义数组长度,这样
new NumericUpDown [tabGrades.Length] [],这是一个错误,您还必须指定列数,并且列数应等于tabGrades.Length
的长度,因为只有这样您才是{{ 1}}将能够存储tempGrades[i]
如果只需要运行第一次迭代,为什么要使用循环。您的代码应该喜欢:
tempGrades [0] [0] = tabGrades;
因此您的最终代码应类似于:
tabGrades