Java,深入研究HashMaps的ArrayList

SK9*_*SK9 2 java arraylist drilldown

我有一个ArrayList<HashMap<String, String>>.我想快速从中提取一个ArrayList<String>包含所有键的新内容.

我该怎么做呢?

aio*_*obe 7

我建议你这样做

List<String> allKeys = new ArrayList<String>();

for (Map<String, String> map : yourListOfMaps)
    allKeys.addAll(map.keySet());
Run Code Online (Sandbox Code Playgroud)

如果你对重复的密钥不感兴趣(例如,如果你不想要两个相同的条目allKeys只是因为它在两个地图中作为密钥存在),我建议你让它allKeys成为类型HashSet<String>.

遍历完成后,allKeysList = new ArrayList<String>(allKeys);如果订单最终对您很重要,您可以这样做.