java自定义类型数组

2024-11-18 23:51:37
推荐回答(2个)
回答(1):

你好,我看出两点问题来。
1. Student的对象都没有初始化,因为你只创建了数组对象,而数组的每个元素都为null,所以你运行的时候会抛出空指针异常。
2. 你的Student类里面的score属性,也定义成了数组类型,但是你没有对这个属性初始化,在下面给课程分数赋值的时候必然会出错。

回答(2):

public class Student {
String name;//对象的名称
public int [] Score=new int[2];//成绩,这里有几个成绩写成几个,或者就传一个
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int[] getScore() {
return Score;
}
public void setScore(int[] score) {
Score = score;
}

}
import java.util.*;
public class Manager {
public void input(Student[] stus){
Scanner in = new Scanner(System.in);
for (int i = 0;i System.out .println("请输入"+(i+1)+"个学生的姓名:");
stus[i].setName(in.next());
for (int j = 0;j System.out.println("请输入第"+(i+1)+"门成绩的分数:");
stus[i].getScore()[j] = in.nextInt();
}
}

}

public static void main(String [] args){
Scanner in = new Scanner(System.in);
System.out.println("请输入学生人数:");
int Sl = in.nextInt();
Student [] stus = new Student[Sl];
for (int i = 0; i < stus.length; i++) {
stus[i]=new Student();
}
Manager manager = new Manager();
manager.input(stus);
}

}