我正在尝试使用以下代码从文本文件构建ArrayList:
while (true) {
String a = reader.readLine();
System.out.println(a);
if (a.equals("<<--- [[ list ENDS HERE ]] --->>")) {
break;
} else {
this.list.add(a);
}
}
由于某种原因,代码将第一个字符串打印到控制台,但是当它尝试将其添加到列表时,我得到一个NullPointerException。
列表从文件的开头开始,当一行显示“&lt;&lt; --- [[list ENDS HERE]] ---&gt;&gt;”时,建筑物应该停止由代码读取。
这是打印到控制台的内容:
First string
Exception in thread "main" java.lang.NullPointerException
at fi.kynis.Engine.buildList(Engine.java:43)
at fi.kynis.Engine.start(Engine.java:22)
at fi.kynis.KKClient.main(KKClient.java:11)
根据要求:第43行:
this.list.add(a);
这里奇怪的是它完全能够打印第一个字符串,但它不能将它添加到ArrayList。所以你们中任何一个更聪明的程序员都可以解决这个问题。
答案 0 :(得分:0)
list
为空。
你需要这样做:
list = new ArrayList<String>();
在向列表中添加元素之前。