2016-03-07 161 views
-1

因此,在我的代碼中,我將.txt文件讀入單個未指定的ArrayList,但是當我嘗試將其解析出來時,它不會轉換回int或Integer。 文本文件看起來像這樣:
名稱1
1號
2號
3號
名稱2

我想當從列表中選擇名稱1時,使Number 1遞增。
學生是初始的ArrayList(嘗試都ArrayList和ArrayList的())
KB是掃描器
玩家是ArrayList的
totalgames被認爲試圖改寫學生的ArrayList第(k + 1)如何將ArrayList()或ArrayList <String>中的對象轉換爲ArrayList <Integer>?

System.out.println(students.get(k)); 
if(kb.nextInt()!=0) 
{ 
players.add(k); 
totalgames.add((Integer)students.get(k+1)); 
} 

但它出現不兼容的類型錯誤。有沒有辦法讓這個錯誤消失而沒有徹底改變所有的ArrayLists?

+0

你能以更好的方式解釋嗎? –

+0

Number 3和Name 2之間是否有分隔符?或者是第一個非數字線的下一個名字?我會建議使用不同的數據結構,但我不確定你想要** ......你是在總結'Number'(s)'1,2,3'嗎? –

+0

聽說過自動裝箱嗎?...如果列表中有一個整數,那麼當您將該特定元素分配給「int」變量時,它會自動將類型轉換爲整數。 –

回答

0
ArrayList students=new ArrayList(); 
     int num=0; 
     while (qbrdr.hasNext()&&num<loop) 
     { 
      students.add(qbrdr.nextLine()); 
      students.add(new Integer(qbrdr.nextInt())); 
      students.add(new Double(qbrdr.nextDouble())); 
      students.add(new Double(qbrdr.nextDouble())); 
      num+=4; 
     } 

在初始化期間,我只是需要它將它們記錄爲int或double而不是Object或String。

相關問題