大家伙,帮帮忙看看 java.lang.nullpointerexception

chen2313 2011-05-04 10:46:10
public class ScoreManager{
private double[] score;
int count;
double max,min,avg;

public ScoreManager(double...arr){

for(int i=0;i<score.length;i++)
score[i]=0;
}

public void add(double n){
count=0;
for(int i=0;i<score.length;i++){
if(score[i]==0)
score[i]=n;
}
count++;
}


public double getMax(){
max=score[0];
for(int i=0;i<score.length;i++){
if(score[i]>max)
max = score[i];
}
return max;
}


public double getMin(){
min=score[0];
for(int i=0;i<score.length;i++){
if(score[i]<min)
min=score[i];
}
return min;
}


public double getAvg(){
int sum=0;
for(int i=0;i<score.length;i++)
sum+=score[i];
avg = sum/score.length;
return avg;
}
}


import java.util.Scanner;

public class View{
double[] arrays;
ScoreManager sm = new ScoreManager(arrays);
public void Test(){
Scanner scanner = new Scanner(System.in);
System.out.print("输入:");
double input = scanner.nextDouble();
sm.add(input);
System.out.println(sm.getMax());
}


public static void main(String[] args){
View v = new View();
v.Test();
}
}

这个错误怎么改正啊
...全文
82 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
duzhaolan 2011-05-06
  • 打赏
  • 举报
回复
public void add(double n){
count=0;
for(int i=0;i<score.length;i++){
if(score[i]==0)
score[i]=n;
}
count++;
}

个人认为:这个方法很奇怪,岂不是你的score数组中的值都是一样的,那么你的getMax()和getMin()方法岂不是就没有什么意义了
jfjy_0 2011-05-06
  • 打赏
  • 举报
回复
只有类的首字母才能大写 public void Test()这个方法的首字母不能大写
Inhibitory 2011-05-04
  • 打赏
  • 举报
回复
private double[] score;
int count;
double max,min,avg;

public ScoreManager(double...arr){
score = new double[arr.length]; // 在这里初始化数组
for(int i=0;i<score.length;i++)
score[i]=0;
}
Inhibitory 2011-05-04
  • 打赏
  • 举报
回复
private double[] score; // 数组score要先初始化才能使用: double[] score = new double[100],像这样
int count;
double max,min,avg;

public ScoreManager(double...arr){

for(int i=0;i<score.length;i++)
score[i]=0;
}
duzhaolan 2011-05-04
  • 打赏
  • 举报
回复
private double[] score;
int count;
double max,min,avg;

public ScoreManager(double...arr){
score = new double[arr.length]; // 在这里初始化数组
for(int i=0;i<score.length;i++)
score[i]=0;
}

public class View{
double[] arrays; // 在这里初始化数组
ScoreManager sm = new ScoreManager(arrays);
知道分子 2011-05-04
  • 打赏
  • 举报
回复
把完整的代码贴出来啊
public ScoreManager(double...arr){

那个arr参数是做什么用的?
chen2313 2011-05-04
  • 打赏
  • 举报
回复
java.lang.NullPointerException
at ScoreManager.<init>(ScoreManager.java:8)
at View.<init>(View.java:5)
at View.main(View.java:16)
还是出现如此错误

50,523

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧