我在这里拿起一本书(Ken Arnold,James Gosling - The JAVA Programming Language),一开始就被卡住了。
任务如下所示:
练习 1.9
修改斐波那契应用程序,以便将斐波那契数存储在一个数组中。为此,创建一个新类来存储数字本身和一个作为奇偶校验符号的布尔值,然后创建一个数组来引用该类的对象。
试图实现:
public class Fibonacci {
static final int MAX_NUMBERS = 10;
public static void main(String[] args) {
FibonacciItem[] fibonacciItems = new FibonacciItem[MAX_NUMBERS];
fibonacciItems[0].number = 1;
//more code...
}
class FibonacciItem {
public int number = 1;
public boolean is_even() {
return this.number % 2 == 0;
}
}
}
突然得到一个 NullPointerException 就很沮丧
fibonacciItems[0].number = 1;
此外,IDEA 还请用消息突出显示上一行
数组“fibonacciItems”的内容被读取,但更新写入...
告诉我这是怎么回事?
正如您已经被告知的,您需要在使用之前从创建的数组中初始化每个对象。只需创建一个这样的循环:
然后用它做任何你想做的事。