【发布时间】:2020-03-21 07:14:09
【问题描述】:
为什么我在为 Average 构造函数运行驱动程序时会出现此空指针异常:
public Average()
{
int[] data = new int[5];
for(int i = 0; i < data.length; i++)
{
score = input.nextLine();
int value = Integer.parseInt(score);
data[i] = value;
}
selectionSort();
calculateMean();
}
Average 构造函数运行良好,直到调用 calculateMean 和 selectionSort 方法。
public void calculateMean()
{
int num;
for(int i = 0; i < data.length; i++)
{
num = data[i];
sum += num;
}
mean = sum/data.length;
public void selectionSort()
{
int maxValue;
int maxIndex;
for (int startScan = 0; startScan < (data.length-1); startScan++)
{
maxIndex = startScan;
maxValue = data[startScan];
for(int index = startScan + 1; index < data.length; index++)
{
if (data[index] > maxValue)
{
maxValue = data[index];
maxIndex = index;
}
}
data[maxIndex] = data[startScan];
data[startScan] = maxValue;
}
}
}
这两种方法都给出空指针异常,我不知道为什么。
【问题讨论】:
标签: arrays for-loop methods constructor nullpointerexception