目標:通過隨機數字和排序數字創建數組,大小爲x
。當填充數組時發生java.lang.NullPointerException
Array.java
import java.util.Random;
/**
* Created by cazorla19 on 05.03.16.
*/
public class Array {
int myArray[];
Random rand;
Array() {
}
Array (int x) {
Array myArray[];
myArray = new Array[x];
for (int i=0; i<x; i++) {
myArray[i] = new Array();
}
}
int[] ArrayFill() {
for (int i=0; i<myArray.length; i++) {
int j = rand.nextInt();
myArray[i] = j;
}
return myArray;
}
int[] ArraySort(){
System.out.println ("Here is the Bubble sort!");
for (int i=0; i<myArray.length; i++) {
for (int j=0; j<myArray.length - i - 1; j++) {
if (myArray[j] > myArray[j+1]) {
int temp = myArray[j];
myArray[j] = myArray [j+1];
myArray[j+1] = temp;
}
}
}
return myArray;
}
void ArrayPrint() {
for (int i=0; i<myArray.length; i++) {
System.out.print (myArray[i] + ", ");
}
}
}
ArrayDo.java
/**
* Created by cazorla19 on 05.03.16.
*/
public class ArrayDo extends Array {
public static void main (String args[]) {
int x = 10;
Array labArray = new Array(x);
labArray.ArrayFill();
labArray.ArrayPrint();
labArray.ArraySort();
labArray.ArrayPrint();
}
}
類型的異常。
Exception in thread "main" java.lang.NullPointerException
at Array.ArrayFill(Array.java:23)
at ArrayDo.main(ArrayDo.java:10)
這就是我試圖使用數組長度的地方。試圖找出通過這個問題[1] [2]。據我所知,即使我在數組構造函數中,我也無法從NULL更改數組值。有沒有人強迫類似的問題?我知道這應該很容易,但仍然不知道有什麼問題。
哦,是的!其實問題是隨機的。我沒有正確地聲明它,變量不是Random類的實例,所以數組很好。非常感謝! – cazorla19