希望非常简单的问题。我想做这样的事情:
Map<String, String> temp = { colName, data };
colName
,data
是字符串变量。
感谢。
答案 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);
}};