2016-06-10 73 views
0

我已經試過這如何打印HashMap <String,ArrayList <Integer>>?

ScreenDumpParser dump = new ScreenDumpParser(); 
    Map btn_bound = dump.parse(); 

    Iterator iterator = btn_bound.keySet().iterator(); 

    while (iterator.hasNext()) { 
     String key = iterator.next().toString(); 
     List<Integer> value = btn_bound.get(key); 

     System.out.println(key); 
    } 

,但此行

List<Integer> value = btn_bound.get(key); 

給出了錯誤:

Type mismatch: cannot convert from Object to List<Integer> 

我需要打印所有的值在一個單行的密鑰一起。

回答

0

如果你想添加一個值到列表中,你應該使用:

value.add(btn_bound.get(key));

,如果按鈕是一個列表或者其他什麼東西,你必須一個以上的價值,你的清單,

添加

value.addRange(btn_bound.get(key));

如果你想獲得一個值:

Object foo = value.get(btn_bound.get(key)); 
+0

鑄造在這裏完全沒有必要。並且這個'列表值=新列表(btn_bound.get(key));'是錯誤的(記住OPs問題在Java中)。 – Tom

+0

當我寫回答的語言標記丟失,所以我寫了Java和C#,但我編輯 – SeeuD1

+0

是的,我知道該標記丟失,所以不用擔心:)。當你爲兩種語言寫東西時,清楚地寫出哪一部分屬於哪種語言。 「新列表<..>(...)」部分顯然不適用於Java(例如)。 – Tom

相關問題