2012-02-09 67 views
0

我所試圖做的是我有格式化爲一個文本文件中添加一切到二維數組列表如下:從文本文件

1 a w e r s 5 2 d 6 
f s d e a 3 6 7 1 32 
2 f s 6 d 
4 s h y 99 3 s d 
7 s x d q s 

,並在各行中的每個對象是一個行中的2D數組列表;我的代碼如下:

while (scanner.hasNextLine()) { 

     array.clear(); 

     for(int i = 0; i<9; i++) { 
      String line = scanner.next(); 
      array.add(line); 
      } 

      System.out.println(array); 
      2dArray.add(array); 
     } 

     scanner.nextLine(); 
    } 

什麼現在發生的是2dArray只是有最後的陣列重複樣15次,當我加入前右打印陣列它2darray它顯示我要添加什麼。有什麼錯誤的建議嗎?

回答

0

問題是你一遍又一遍地插入相同的對象array

變化:

array.clear(); 

到:

ArrayList<String> array = new ArrayList<String>(); 

,並刪除當前的array聲明。

+0

我做了這個,現在它給了我2個數組的每個數組的9個副本,而不是一個。 – 2012-02-09 20:56:59

+0

刪除你的內循環然後,如果你想每行的一個副本,你的代碼只有'while(scanner.hasNextLine())'循環工作正常。 – 2012-02-09 20:58:50

+0

我想讓數組擁有所有的值(9是任意的,我希望它使給定行中的每個對象(具有基本空格分隔符)具有其自己的索引 而且一旦我有了這個,我想要將每一行添加到2darray(每個字符串都有自己的索引)......如果這是有道理的 – 2012-02-09 21:02:38