在对象下实例化新对象

时间:2012-03-20 18:09:33

标签: java map

为什么我不能做这个指示?我能做些什么来取悦它呢?

  

new HashMap<Integer, new java.util.ArrayList<Long>()>();

由于

3 个答案:

答案 0 :(得分:4)

你的意思可能是:

Map<Integer, List<Long>> map = new HashMap<Integer, List<Long>>();
List<Long> list = new ArrayList<Long>();
map.put(5, list);

答案 1 :(得分:1)

您无法在地图中创建新实例。您只想创建该类型的规范。

new HashMap<Integer, List<Long>>();

然后,地图中的每个条目都可以指向列表的实际实例,任何类型的列表都可以。

map.put(1, new LinkedList<Long>());
map.put(2, new ArrayList<Long>());
map.put(3, new Vector<Long>());

答案 2 :(得分:1)

Map map = new Hashmap<Integer,List<Long>>;

map.put(1,new ArrayList<Long>());