java创建对象数组的空指针异常

publicclassStudent{intscore;doublesum;intmax;publicvoidavr(Student[]stus){for(inti=0;... public class Student {
int score;
double sum;
int max;
public void avr(Student[] stus){
for(int i=0;i<stus.length;i++){
sum+=stus[i].score;
}
System.out.println("平均成绩:"+sum/stus.length);
}

public void max(Student[] stus){
max=stus[0].score;
for(int i=0;i<stus.length;i++){
if(max<stus[i].score){
max=stus[i].score;
}
System.out.println("最高成绩:"+max);
}

}
}

import java.util.*;
public class Text {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
Student s1=new Student();
Student[] stus=new Student[5];
System.out.println("请输入五名参赛者的成绩:");

for(int i=0;i<stus.length;i++){
stus[i].score=input.nextInt();
}
s1.avr(stus);
}
}

在第二个里的for循环里报错了Exception in thread "main" java.lang.NullPointerException

求解
展开
 我来答
百度网友9283fba
2017-02-15 · TA获得超过162个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:158万
展开全部
你创建stus数组,但他并没有实例化,在创建数组语句后你可以打印数组第一个元素,他显示为null,说明当前对象元素并没有创建成功,因此stus[i] = input.nextInt()中stus[i]是不存在的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式