首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是什么导致运行时出现空指针异常?

是什么导致运行时出现空指针异常?
EN

Stack Overflow用户
提问于 2015-04-26 17:41:15
回答 2查看 4.7K关注 0票数 0

我的代码编译,但我在运行时得到了这个错误:

代码语言:javascript
运行
复制
Exception in thread "main" java.lang.ExceptionInInitializerError
    at GUI.<init>(GUI.java:46)
    at GUI.main(GUI.java:252)
Caused by: java.lang.NullPointerException
    at java.util.Objects.requireNonNull(Objects.java:203)
    at java.util.Arrays$ArrayList.<init>(Arrays.java:3813)
    at java.util.Arrays.asList(Arrays.java:3800)
    at db.<clinit>(db.java:23)
    ... 2 more

这是导致错误的代码:

代码语言:javascript
运行
复制
public static String strLine;
public static String[] filearray;
public static List<String> list = Arrays.asList(filearray);


public static void load() throws IOException{

FileInputStream in = new FileInputStream("slist.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(in));

filearray = new String[4];

while ((strLine = br.readLine()) != null) {

for (int j = 0; j < filearray.length; j++){
filearray[j] = br.readLine();

}

}
in.close();

错误中引用的第46行:

代码语言:javascript
运行
复制
JList stafflist = new JList(db.list.toArray());

我试图以数组的形式加载一个文本文件,并将其添加到JList人员列表中,但我得到了一个运行时错误。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-26 17:47:09

在你的声明中:

代码语言:javascript
运行
复制
public static String[] filearray;
public static List<String> list = Arrays.asList(filearray);

fileArray为null,您试图在它周围创建一个列表。

您可以在这里初始化fileArray

代码语言:javascript
运行
复制
public static String[] filearray = new String[4];

或者在将值放入filearray之后调用filearray

票数 1
EN

Stack Overflow用户

发布于 2015-04-26 17:48:18

我在您的代码中看到的问题是:

代码语言:javascript
运行
复制
public static String[] filearray;
public static List<String> list = Arrays.asList(filearray);

您正在尝试使用filearray方法将当时为null的Arrays.asList()转换为list。

您应该首先初始化filearray

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29881109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档