2013-05-28 185 views
1

我試圖用包含字符串和浮點數的地圖中的數據填充JTable。以下是我如何努力做到這一點,但我一遍又一遍地得到相同的數據。用地圖數據填充JTable

private JTable buildTable(Map<String, Float> mapData){ 

    String columnNames[] = { "MyString", "MyFloat" }; 
    Object[][] data = new Object[mapData.size()][2]; 

    for(int i = 0; i < mapData.size(); i++){ 

     for(Map.Entry<String, Float> entry : mapData.entrySet()){ 

     data[i][0] = entry.getKey(); 
     data[i][1] = entry.getValue().getMyFloat(); 
     break; 
     } 
    } 

    JTable table = new JTable(data, columnNames); 

    return table; 
} 
+1

也許沒有理由地圖<>轉換爲JTable中,實現AbstractTableModel上與地圖源 – mKorbel

回答

2

內循環在外循環的每次迭代中將所有鍵/值對寫入相同的數組索引。事實上,我們只需要一個循環,而不是兩個循環。一個單獨的計數器可以幫助增加索引。

int i = 0; 
for(Map.Entry<String, Float> entry : mapData.entrySet()) { 

    data[i][0] = entry.getKey(); 
    data[i][1] = entry.getValue().getMyFloat(); 
    i++; 
} 
+0

賓果!就是這樣!非常感謝!! –