Java 从另一个类声明方法时发生NullPointerException
我一直在努力解决NullPointerException问题:Java 从另一个类声明方法时发生NullPointerException,java,arrays,object,nullpointerexception,declaration,Java,Arrays,Object,Nullpointerexception,Declaration,我一直在努力解决NullPointerException问题: Exception in thread "main" java.lang.NullPointerException at LinearSearcher.<init>(LinearSearcher.java:12) at DemoSearches.main(DemoSearches.java:4) 声明LinearSearcher的类: public class DemoSearches { pub
Exception in thread "main" java.lang.NullPointerException
at LinearSearcher.<init>(LinearSearcher.java:12)
at DemoSearches.main(DemoSearches.java:4)
声明LinearSearcher的类:
public class DemoSearches {
public static void main(String args[]) {
LinearSearcher search = new LinearSearcher(); // Line 4 Here
search.display();
search.searchFor(50);
search.searchFor(100);
}
}
numbers
为null
,因为您尚未初始化它。你可以改变
private int[] numbers;
到
并消除问题。其他解决方案,添加
numbers = new int[10];
在当前分配之前。您从未初始化
数字
数组,因此当您尝试在LinearSearcher
构造函数中访问它时,您正在尝试访问一个不存在的数组。因此会引发异常。您需要执行numbers=newint[10]在执行numbers[0]
等操作之前执行code>操作。这将创建对象以便使用。假设未初始化private int[]numbers
。
private int[] numbers = { 1, 10, 20, 30, 40, 50, 60, 70, 80, 90 };
numbers = new int[10];