我的问题是我不知道如何遍历我的列表并将某些属性分配给现有的二维数组。

我有一个包含 50 门类(class)的列表

List<Course> Courses;

.. 和一个相同大小的数组(对不起,我知道逻辑很差,但这些不是我的实际列表名称,我只需要它们的大小相同。
object[,] enrolledStudents = new object [50, 2];

我的理解是,我将能够将每个 select Course 属性中的 50 个添加到此数组中。虽然也许我需要一个大小为 [50, 50] 的数组?

无论如何,当这只是一个对象数组时,我可以毫无问题地循环遍历类(class)列表并添加我想要的属性
    int i = 0;
    foreach (var a in Courses)
    {
        enrolledStudents[i] = a.CourseName;
        i++;
    }

这用 50 个 CourseNames 填充了我的(当时是一维的)数组,但现在我也希望能够将密码添加到数组中。

所以理想情况下我希望我的(现在是二维的)数组看起来像
{ y = CourseName, val = PassMark }
{ y = CourseName, val = PassMark }
{ y = CourseName, val = PassMark }
{ y = CourseName, val = PassMark }
...

在此期间我会继续使用谷歌搜索,因为这似乎是一个我应该知道答案的基本问题。

最佳答案

int i = 0;
foreach (var a in Courses)
{
    enrolledStudents[i, 0] = a.CourseName;
    enrolledStudents[i, 1] = a.PassMark;
    i++;
}

这应该有效。您需要数组为 50x2(50 个类(class),每个类(class)都有一个名称和一个通过标记),因此 [50, 2] 是正确的。如果需要,您可以交换数字并使用 [2, 50] ,这取决于您的喜好。但是请注意,您还需要将 [i, 0] 更改为 [0, i]。

关于c# - 遍历列表并将值添加到二维数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38522609/

10-11 23:01
查看更多