Java创建地图对象的实例

时间:2012-07-30 01:29:36

标签: java arrays string list map

希望非常简单的问题。我想做这样的事情:

Map<String, String> temp = { colName, data };

colNamedata是字符串变量。

感谢。

3 个答案:

答案 0 :(得分:14)

地图是一个界面。创建一个实现它的类的实例:

Map<String, String> temp = new HashMap<String, String>();
temp.put(colName, data);

或者,在Java 7中:

Map<String, String> temp = new HashMap<>();
temp.put(colName, data);

答案 1 :(得分:2)

@JohnGirata是对的。

如果你真的很难过,你可以看看http://nileshbansal.blogspot.com.au/2009/04/initializing-java-maps-inline.html

这不是你所要求的,但不是那么简洁/黑客。

答案 2 :(得分:1)

将条目放入刚刚创建的Map中的快速方法如下(让我使用HashMap,因为我喜欢它们):

Map<String,String> temp = new HashMap<String,String>(){{
    put(colName, data);
}};

注意所有带括号分号的括号!

虽然在Java7中您通常可以使用diamond operator并编写类似此Map<String,String> temp = new HashMap<String,String>();的内容,但在将内容放入地图中时,这不起作用。换句话说,如果您尝试以下操作,编译器会对您大喊大叫(不要问我原因):

Map<String,String> temp = new HashMap<>(){{
    put(colName, data);
}};