你好,我有一個問題,將一個整數的ArrayList存儲到整數ArrayList的ArrayList中。下面是完整的代碼:當我添加一個包含整數的對象時,Java ArrayList保持爲空
public class SetZeroMatrix {
public static void main(String [] args){
ArrayList<ArrayList<Integer>> zeroMatrix = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> insertionList = new ArrayList<Integer>();
try {
FileReader in = new FileReader("matrixInput.txt");
BufferedReader br = new BufferedReader(in);
Scanner matrixScanner = new Scanner(br);
while(matrixScanner.hasNextLine()){
Scanner rowReader = new Scanner(matrixScanner.nextLine());
while(rowReader.hasNextInt()){
insertionList.add(rowReader.nextInt());
}
//testing to see if insertionList is empty
System.out.println("Arraylist contains: " + insertionList.toString());
zeroMatrix.add(insertionList);
insertionList.clear();
}
matrixScanner.close();
}
catch(FileNotFoundException ex) {
System.out.print("File not found" + ex);
}
//testing to see if zeroMatrix is empty
ArrayList<Integer> testList = new ArrayList<Integer>();
testList = zeroMatrix.get(1);
System.out.println("ArrayList contains: " + testList.toString());
}
}
這個節目是從包含一個文本文件「matrixInput.txt」閱讀:
34
20
的問題是我加insertionList後進入zeroMatrix,zeroMatrix打印空ArrayList(在代碼的最後一行)。我懷疑它是因爲我沒有正確地將insertionList插入到zeroMatrix中?或者,也許我打印不正確?
刪除'insertionList'中的所有內容後,將其添加到'zeroMatrix'。這樣做後,你期望它打印出什麼? – csmckelvey 2014-09-05 03:31:06
在while循環中,您不應該清除insertionList,而應該創建一個新的插入實例 – 2014-09-05 03:31:42