填充哈希表
问题描述:
如何在初始化时填写的HashMap在Java中,可以这样呢?
public static Map<byte,int> sizeNeeded=new HashMap<byte,int>(){1,1};
答
byte,int是原始的,集合在对象上工作。你需要像这样
public static Map<Byte, Integer> sizeNeeded = new HashMap<Byte, Integer>() {
{
put(new Byte("1"), 1);
put(new Byte("2"), 2);
}
;
};
这将创建一个新的地图,并使用initializer block它会调用把方法来填充数据
答
首先,你不能有原语在Java的泛型类型参数,所以Map<byte,int>
是不可能的,它必须是Map<Byte,Integer>
。
其次,不,现在Java中没有集合文字,尽管它们被认为是Project Coin中的一个新功能。不幸的是,他们被从Java 7中删除,你将不得不等到Java 8 ...
为什么downvote? – 2011-01-27 10:05:07