Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.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 存储多个值的ArrayList对象 List DictionaryList=new ArrayList();_Java - Fatal编程技术网

Java 存储多个值的ArrayList对象 List DictionaryList=new ArrayList();

Java 存储多个值的ArrayList对象 List DictionaryList=new ArrayList();,java,Java,我创建了ArrayList对象,我需要存储多个带有键的名称,并希望显示带有键的名称。我该怎么做呢。请帮帮我我想你要找的东西是地图 以HashMap为例 现在让我们访问其中一个条目 map.put("name1",23); 一旦掌握了窍门,使用参数化类就很简单了 确保使用对象来指定对 因此,在本例中,使用Integer()表示数字,而不是int 你应该考虑使用。 考虑到您需要一个字符串到字符串映射,可以将映射实例化为: map.get("name1"); // returns 23 和检索

我创建了ArrayList对象,我需要存储多个带有键的名称,并希望显示带有键的名称。我该怎么做呢。请帮帮我我想你要找的东西是地图

以HashMap为例

现在让我们访问其中一个条目

map.put("name1",23);
一旦掌握了窍门,使用参数化类就很简单了

  • 确保使用对象来指定对

  • 因此,在本例中,使用Integer()表示数字,而不是int

你应该考虑使用。

考虑到您需要一个
字符串
字符串
映射,可以将
映射
实例化为:

map.get("name1"); // returns 23
和检索:

mapOfNames.put(key, name);
现在考虑到可能有多个值与同一个键关联,您必须将
Map
修改为
HashMap
。也就是说,每个
将对应一个
值列表

因此,定义的形式如下:

String name = mapOfNames.get(key);
检索:

mapOfNames.get(key).add(name);
List retrievedNamesForKey=mapOfNames.get(key);

关于HashMaps的更多信息可以在这里找到:

为什么不使用一个映射来存储键值对??。。为什么要使用地图/字典的数组列表?您只需要使用正确的数据结构;)选择正确的数据结构是编程工作的一半你说的“常规地图”是什么意思?你指的是树形地图吗?因为Map只是一个接口。@Sathesh:是的,键是唯一的。用同一个键插入多个值将覆盖先前插入的值。如何防止值覆盖-writing@Sathesh:我编辑了答案,以确保每个键对应的值都可以维护一个值列表。
mapOfNames.put(key, name);
String name = mapOfNames.get(key);
Map<String, List<String>> mapOfNames = new HashMap<String, List<String>>();
mapOfNames.get(key).add(name);
List<String> retrievedNamesForKey = mapOfNames.get(key);