我得到一個奇怪的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