问题描述
- NullPointerException
-
public class RandomArray {
private int arraySize;
private int sum;
private double average;
private int[] array; // instance variable
/**
* Constructor
* @param size The size of the array.
*/
public RandomArray(int size) {
// write your code here
arraySize = size;
int[] array = new int[arraySize];
for (int i = 0; i < arraySize; i++) {
array[i] = (int) Math.random()*10;
}
}/** * A method to print the array elements. */ public void printArray() { // write your code here for(int i = 0; i < arraySize; i++) System.out.print(array[i]); } /** * A method to calculate the sum of all elements. * @return The sum. */ public int calcSum() { // write your code here sum = 0; for(int i = 0; i < arraySize; i++) sum += array[i]; return sum; } /** * A method to calculate the mean (or average) of all elements. * @return The mean. */ public double calcMean() { // write your code here average = this.calcSum() / arraySize; return average; } /** * A main method to test. */ public static void main(String[] args) { // Check to see if the user has actually sent a parameter to the method. if (args.length != 1) { System.out.println("Usage: java RandomArray <NUM>. Example: java RandomArray 5"); System.exit(-1); } // Create an instance of the class. RandomArray test = new RandomArray(Integer.parseInt(args[0])); // Print the array. test.printArray(); // Calculate the sum of all the values in the array and print it. System.out.println("Sum: " + test.calcSum()); // Calculate the mean of all the values in the array and print it. System.out.println("Mean: " + test.calcMean()); }
}
错误报告
Exception in thread "main" java.lang.NullPointerException
at RandomArray.printArray(RandomArray.java:35)
at RandomArray.main(RandomArray.java:74)
解决方案
sum += array[i];
这里array在哪里定义的?哪里初始化的?
解决方案二:
你的程序args[0]是什么,你有传命令行参数给程序么?
参照 http://blog.csdn.net/randomnet/article/details/7416456
这里的做法,给一个参数
解决方案三:
onStartCommand NullPointerException
时间: 2024-09-15 23:46:22