我得到一个奇怪的NullPointerExcpetion在第20行:NullPointerException异常的LinkedList的队列阵列
regs[Integer.parseInt(str.split(" ")[1]) - 1].add(line.poll());
我不知道是什么原因造成这一点。有人可以帮我解决这个问题吗?
import java.io.*;
import java.util.*;
public class shoppay
{
public static void main (String[] args) throws IOException
{
BufferedReader f = new BufferedReader(new FileReader("shoppay.in"));
PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter("shoppay.out")));
Queue<Integer> line = new LinkedList <Integer>();
int num = Integer.parseInt(f.readLine());
String str;
LinkedList<Integer>[] regs = (LinkedList<Integer>[]) new LinkedList[num];
while ((str = f.readLine()) != null)
{
if (str.charAt(0) == 'C')
line.add(Integer.parseInt(str.split(" ")[1]));
else
regs[Integer.parseInt(str.split(" ")[1]) - 1].add(line.poll());
}
out.close();
System.exit(0);
}
}
而且,我得到一个警告:
类型安全:未选中从java.util.LinkedList中施放[]到java.util.LinkedList中的[]
这是否与错误有关?
编辑:输入只是一串行。第一行是一个数字,其余的是“C”或“R”后跟一个数字。另外,我需要一个regs队列。
“类型安全性”警告与'NullPointerException'无关。 'Type Safety'异常可能与正在转换的LinkedList类型有关,而不是设置为Integer。 – jbranchaud 2011-12-26 01:20:24