簡體   English   中英

如何在java中將地圖轉換為二維數組?

[英]How to convert a map to two dimensional array in java?

我想將Map的所有鍵/值添加到二維數組中。

有沒有人知道更好的方法? 我做了如下,但我尋找更好的方法。

    Map<String, String> memoMap = AvoCollection.getMemoMap();
    String[][] data = new String[memoMap.size()][2];
    int ii =0;
    for(Map.Entry entry : memoMap.entrySet()){
        data[ii][0] = entry.getKey().toString();
        data[ii][1] = entry.getValue().toString();
        ii++;
    }
    final DefaultTableModel model = new DefaultTableModel(data,new String[]{"Memo","ID"});

這可能稍微好一些,但不是很多:

Map<String,String> memoMap = AvoCollection.getMemoMap();
String[][] data = new String[memoMap.size()][];
int ii =0;
for(Map.Entry<String,String> entry : memoMap.entrySet()){
    data[ii++] = new String[] { entry.getKey(), entry.getValue() };
}
final DefaultTableModel model = new DefaultTableModel(data,new String[]{"Memo","ID"});

聲明Map.Entry<String,String>您可以停止調用toString ; 您還可以使用聚合創建一個雙元素數組。

您是否願意從谷歌使用Guava Library。 http://code.google.com/p/guava-libraries/wiki/NewCollectionTypesExplained 然后你可以嘗試使用MultiMap,它會返回鍵和值的集合,可以很容易地轉換成數組。 嘗試查看這個庫,它有很多很酷的功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM