Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何制作枚举值和整数的二维数组_C#_Arrays_Enums - Fatal编程技术网

C# 如何制作枚举值和整数的二维数组

C# 如何制作枚举值和整数的二维数组,c#,arrays,enums,C#,Arrays,Enums,我需要制作学生成绩的二维数组。 所以我有科目 public enum Subjects { Programming, Design, Administration } 尽管如此,我仍在尝试获取数组中的枚举值,因为我有例外 class Program { static void Main(string[] args) { Subjects[,] grades = new Subjects[Enum.Parse(typeof(Subjects), 5];

我需要制作学生成绩的二维数组。 所以我有科目

public enum Subjects
{
    Programming, Design, Administration
}
尽管如此,我仍在尝试获取数组中的枚举值,因为我有例外

class Program
{
    static void Main(string[] args)
    {
        Subjects[,] grades = new Subjects[Enum.Parse(typeof(Subjects), 5];
      }
}
我需要这样做数组[enum.Subjects,每个主题的分数整数]
有可能吗?

如果你想有一个“成绩册”,每个科目都要保留5个成绩,你可以这样做:

public enum Subjects
{
    Programming, Design, Administration
}
class Program
{
    static void Main(string[] args)
    {

        var grades = new Dictionary<Subjects, int[]>();
        foreach (Subjects subject in Enum.GetValues(typeof(Subjects)))
        {
            grades.Add(subject, new int[5]);
        }
        // example of use:
        grades[Subjects.Programming][0] = 0;
    }
}
公共枚举主题
{
编程、设计、管理
}
班级计划
{
静态void Main(字符串[]参数)
{
变量等级=新字典();
foreach(Enum.GetValues中的Subjects主题(typeof(Subjects)))
{
增加(主题,新国际[5]);
}
//使用示例:
成绩[科目.程式][0]=0;
}
}

但我同意这些评论,即如果您能描述您的问题是什么,而不是如何解决问题,我们可以更好地帮助您。

您几乎肯定不想使用2D阵列。相反,可能是一个
字典
列表
,其中
StudentGrade
是一个包含主题和年级的两个属性的类。我需要创建学生成绩的二维数组,这是一个解决方案,而不是一个要求。要求是什么?您需要如何处理您的数据结构?我建议使用
列表
而不是
int[]
,因为这样可以更轻松地添加新的分数,而且您不必限制在设定的5个分数之内。