Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.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
Java int[]无法转换为int_Java_Arrays_Class - Fatal编程技术网

Java int[]无法转换为int

Java int[]无法转换为int,java,arrays,class,Java,Arrays,Class,我想使用2D数组作为成绩册方法,其中包含学生姓名,然后是考试分数。在课堂上我做了如下练习 private int numberOfStudents; private String [] studentName; private int examNumber; private int [] examScores; private int [][] gradebook; public ExamAverage () { numberOfStudents = 0; studentName =

我想使用2D数组作为成绩册方法,其中包含学生姓名,然后是考试分数。在课堂上我做了如下练习

private int numberOfStudents;    
private String [] studentName;
private int  examNumber;
private int [] examScores;
private int [][] gradebook;

public ExamAverage ()
{
numberOfStudents = 0;
studentName = new String[numberOfStudents];
examNumber = 0;
examScores = new int [numberOfStudents]; 
gradebook = new int [numberOfStudents][examScores];
但是我得到一个错误int[]无法转换为int。

您有:

gradebook = new int [numberOfStudents][examScores];
但是
examcores
是一个
int[]
。数组维度必须是
int
,因此
examcores
不能用作数组维度(考虑到错误的字面含义,我可以理解您对错误的混淆:它想要
int
,但您给了它一个
int[]

根据你的描述,我猜你的意思是:

gradebook = new int [numberOfStudents][numberOfExams];

其中
numberofexamies
是您需要的
int
,包含考试计数。不过,这只是一个猜测。

examcores
是一个int[]数组,数组大小应该是
int
,因此它会给您一个错误。

它确切地告诉您问题出在哪里


examcores
是一个
int数组
,但您试图将其用作一个整数,以表示您希望数组
成绩册的第二维度的大小


您可能想使用
examcores.length
或一些数字来指示每个学生想要多少考试分数。

那么,您认为这个错误意味着什么?这里还有一个严重的问题。您正在创建大小为零的数组。在创建数组
studentName
ExamStores
gradebook
之前,您确实需要将
numberOfStudents
NumberOfExames
设置为非零的值;否则这些数组将没有空间容纳任何实际值。非常感谢Jason!是非常有用的信息,并添加到我的笔记本甚至哈哈。很高兴你理解我的困惑。你帮了大忙!