Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 实例化map的方法<;字符串,列表<;字符串>&燃气轮机;在爪哇_Java_List_Map_Generic Programming - Fatal编程技术网

Java 实例化map的方法<;字符串,列表<;字符串>&燃气轮机;在爪哇

Java 实例化map的方法<;字符串,列表<;字符串>&燃气轮机;在爪哇,java,list,map,generic-programming,Java,List,Map,Generic Programming,我想用Java实例化Map 我试过了 Map<String, List<String>> foo = new <String, List<String>>(); mapfoo=new(); 及 mapfoo=new(); 它们都不起作用。有人知道如何用Java实例化这个映射吗?newhashmap(); new HashMap<String, List<String>>(); 或者正如gparyani所评论的: n

我想用Java实例化
Map

我试过了

Map<String, List<String>> foo = new <String, List<String>>();
mapfoo=new();

mapfoo=new();
它们都不起作用。有人知道如何用Java实例化这个映射吗?

newhashmap();
new HashMap<String, List<String>>();
或者正如gparyani所评论的:

new HashMap<>(); // type inference
newhashmap();//类型推断
注意:需要为每个条目提供一个实例化列表作为值。无法获取(“myKey”)。请添加(“此密钥的某些字符串”);第一次从中获取()列表时

所以,获取一个列表,检查它是否为空

如果为空,则创建一个新列表,向其中添加字符串,然后将列表放回原处。
如果它不是空的,添加到它,或者做你想做的。

你忘了提到这个类<代码>映射这里是参考类型,是一个接口HashMap指定创建并分配给引用
foo
的对象的实际类型

Map<String, List<String>> foo = new HashMap<String, List<String>>();
您的第二种实例化方式是不推荐。坚持使用
列表
,这是一个界面

//不要将地图绑定到ArrayList
新树映射();
//改用列表接口类型
新树映射();

地图是一个界面。您必须告诉Java要实例化哪个具体的映射类

Map<String, List<String>> foo = new HashMap<String, List<String>>();
mapfoo=newhashmap();

mapfoo=newtreemap();

等等。

…或者你可以说
newhashmap()从Java7开始
Map<String, List<String>> foo = new HashMap<>();
// Don't bind your Map to ArrayList
new TreeMap<String, ArrayList<String>>();

// Use List interface type instead
new TreeMap<String, List<String>>();
Map<String, List<String>> foo = new HashMap<String, List<String>>();
Map<String, List<String>> foo = new TreeMap<String, List<String>>();