是否可以有一个包含HashMap键的数组?

时间:2014-12-05 17:08:09

标签: java arrays hashmap

是的,基本上你可以将HashMap键添加到数组吗?

例如,我可以使用包含这些String HashMap键的String数组吗?

HashMap container = new HashMap();
container.put("A", 1);
container.put("B", 2);
container.put("C", 5);
container.put("D", 8);

1 个答案:

答案 0 :(得分:2)

container.keySet().toArray()

会给你一个Object []

"A", "D", "B", "C"

订单未定义。

请注意,即使使用HashMap,keySet()也将返回Set,但toArray()仍将是Object [],因此需要进行转换:

String[] keys = (String[]) container.keySet().toArray();

或:

String[] keys = container.keySet().toArray(new String[container.keySet().size()]);

(您可以执行new String[0]但效率较低,因为它会重新分配数组,因此最好事先做到这一点。