1

我让程序运行了伙计们非常感谢我刚刚删除了所有内容并从头开始重新开始!现在我遇到了问题:

// 构造函数

public Grade ( string cname , int Studentident , int [] homework , int [] classwork ,      int [] midexam , int [] finalexam)
{
    coursename = cname ;
    Studentid = Studentident ;  
    hwgrade = homework ;
    cwgrade = classwork ;
    midegrade = midexam ;
    finalegrade = finalexam ;
} 

// 尝试设置值

Grade grade = new Grade('m',1,1,1,1,1);

它给了我一个错误,无法从 int 转换为 int[]

4

2 回答 2

6

您必须传入数组,而不是单个值:

Grade grade = new Grade('m',
                        new int[] {1}, 
                        new int[] {1}, 
                        new int[] {1}, 
                        new int[] {1}, 
                        new int[] {1});

intint[]毕竟不一样。

以上假设您的字段(例如hwgrade)被声明为int[]而不是int

如果不是这种情况,并且字段实际上是整数而不是整数数组,则需要更改方法签名以采用整数而不是数组:

public Grade(string cname, 
             int Studentident, 
             int homework, 
             int classwork,
             int midexam,
             int finalexam)
于 2012-10-09T18:27:57.613 回答
0

您可以使用此代码替换 - 如果您希望使用 int 而不是 int 数组,请删除 []

Grade ( string cname , int Studentident , int homework , int classwork ,      int midexam , int  finalexam)
{
  ...
}

或者创建数组new int[] {1}并传入参数

于 2012-10-09T18:28:05.337 回答