將哈希映射轉換爲二維數組的最簡單方法是什麼?將哈希映射轉換爲二維數組
9
A
回答
8
HashMap map = new HashMap();
Object[][] arr = new Object[map.size()][2];
Set entries = map.entrySet();
Iterator entriesIterator = entries.iterator();
int i = 0;
while(entriesIterator.hasNext()){
Map.Entry mapping = (Map.Entry) entriesIterator.next();
arr[i][0] = mapping.getKey();
arr[i][1] = mapping.getValue();
i++;
}
5
這隻能在鍵和值的類型相同時才能完成。
考慮:
HashMap<String,String> map;
我可以創建這個地圖的數組,這個簡單的循環:使用entrySet
String[][] array = new String[map.size()][2];
int count = 0;
for(Map.Entry<String,String> entry : map.entrySet()){
array[count][0] = entry.getKey();
array[count][1] = entry.getValue();
count++;
}
-1
遍歷您的地圖,並與Entry對象
填寫您的數組記錄
3
Object[][] array = new Object[][]{map.keySet.toArray(), map.entrySet.toArray()};
或者,更具體的有關類型,讓我們說他們是Strings
:Set
的toArray
需要提示的說法,讓
String[][] array = new String[][]{map.keySet.toArray(new String[0]), map.entrySet.toArray(new String[0])};
編輯:我只是意識到了兩天後雖然這可能偶然的工作,一般來說它不應該。原因是中間Set
;雖然它是「以地圖爲後盾」,但似乎沒有明確保證它會按任何特定順序迭代。因此,密鑰和入口數組可能不是相同的順序,這肯定是一場災難!
相關問題
- 1. 從哈希映射轉換爲數組
- 2. 將靜態二維字符串數組轉換爲哈希映射
- 3. 在Clojure中將元組數組轉換爲哈希映射
- 4. 將可變哈希映射轉換爲不可變哈希映射
- 5. 安全地轉換爲哈希映射
- 6. 如何將映射轉換爲java中的二維數組?
- 7. 將數組轉換爲哈希數組
- 8. 將哈希數組轉換爲數組
- 9. 二維數組哈希
- 10. 哈希值映射值轉換錯誤
- 11. 使用jackson jersey將複雜哈希映射轉換爲JSON
- 12. 將ArrayList /哈希映射轉換爲結果集
- 13. 通過哈希映射映射,需要返回哈希映射
- 14. 將二維數組映射到Eigen :: Matrix
- 15. 將二維數組轉換爲二維數組列表?
- 16. 將二維數組轉換爲二維數組的多個塊
- 17. 轉換爲二維數組
- 18. 轉換映射到2維數組
- 19. 哈希表與二維數組
- 20. 將二維數組轉換爲指針
- 21. 將一個數組轉換爲二維
- 22. 如何將哈希鍵數組的python哈希轉換爲數組?
- 23. 哈希數組轉換
- 24. 將二維數組映射到一維數組中
- 25. 斯卡拉 - 轉換映射到二維數組
- 26. 將數組插入哈希映射而不創建新數組
- 27. 如何將一個數組轉換爲哈希鍵和另一個數組轉換爲相同哈希的值?
- 28. 哈希值的數組轉換爲csv
- 29. 將整數轉換爲字符串中的字符串,對象哈希映射
- 30. 將一維數組索引轉換爲二維數組索引
現在我們可以創建一個oneliner了嗎? –