2017-06-14 87 views
0

我想将数组插入哈希映射中。当Integer类型的val被创建后,我把它放到地图上是非常好的。将数组插入哈希映射而不创建新数组

Integer[] val = {1,2}; 

LinkedHashMap<String, Integer[]> map = new LinkedHashMap<String, Integer[]>(); 
map.put("1", val); 

但是,当我并不想创建一个阵列正下方

map.put("1", {1,2}); 

那么它的不正确插入到图这个样子。为什么? 这可以怎么做?

回答

3

你可以这样做:

map.put("1", new Integer[] {1,2}); 

这是允许在地图

+0

是的,那是正确的。谢谢 –

0

插入匿名数组你需要传递的Integer[],那里的{1,2}不是Integer[]实例的实例。

0

当你做到这一点

Integer[] val = {1, 2}; 

然后{1, 2}数组初始化。这只能在数组变量的声明中使用,而不能在其他任何地方使用。

ΦXocę웃Pepeúpaツ已经告诉过您可以使用的语法:new Integer[] {1, 2}。这可以在任何地方使用数组。我认为他们认为当你分配一个新的数组时,你应该被迫使用new关键字,然后在你作为声明的一部分进行时做出例外。