晚间!
我有以下地图:
HashMap<String, ArrayList> myMap = new HashMap<String, ArrayList>();
然后,我向其中添加了以下数据:
ArrayList myList = new ArrayList();
myList.add("Test 1");
myList.add("Test 2");
myList.add("Test 3");
myMap.put("Tests", myList);
这给我留下了以下数据:
关键: 测试
值: 测试1,测试2,测试3
我的问题是,如何将新值添加到我现有的键上?因此,例如,如何将值“ Test 4”添加到键“ Tests”上。
谢谢。
只需从地图上获取列表,然后将元素添加到列表中即可:
ArrayList list = myMap.get("Tests");
list.add("Test4");
关于您的代码,还有一些其他事项需要注意。首先,不要使用raw类型 ArrayList
。使用泛型:
HashMap<String, ArrayList<String>> myMap = new HashMap<String, ArrayList<String>>();
ArrayList<String> myList = new ArrayList<String>();
myList.add("Test 1");
myList.add("Test 2");
myList.add("Test 3");
myMap.put("Tests", myList);
其次,编写接口程序,而不是实现程序。换句话说,程序使用接口Map
和List
,而不是实施方式HashMap
和ArrayList
。这是众所周知的OO编程原理,例如,如果有必要,例如,它可以更轻松地切换到其他实现。
Map<String, List<String>> myMap = new HashMap<String, List<String>>();
List<String> myList = new ArrayList<String>();
myList.add("Test 1");
myList.add("Test 2");
myList.add("Test 3");
myMap.put("Tests", myList);
最后,提供语法提示:如果您使用的是Java 7或更高版本,则可以使用,<>
而不必重复类型参数:
Map<String, List<String>> myMap = new HashMap<>();
List<String> myList = new ArrayList<>();
myList.add("Test 1");
myList.add("Test 2");
myList.add("Test 3");
myMap.put("Tests", myList);
myMap.get("Tests").add("Test 4");
假设我有 但无法使其工作,很好奇是否有办法做到这一点 我现在得到的是以下解决方案,但我希望将其收集到map,而不必首先定义它:
< code>list_of_lists=[[1,2,3],[4,5,6]] < br > < code > list _ to _ add =[" A "," B "," C"] 我希望结果是list_of_lists会变成: 谢谢!
假设我有一个数据框 和列名称列表 如何将新列添加到以零为值的数据帧中?
我的节点设置如下: 我想添加CDATA而不删除标记f.e.: 我找到的每一个解决方案要么是创建一个新的节点,这会破坏我的结构,要么是丢弃标记。 我的代码如下所示:
我想迭代一个对象列表。每个对象都包含一些对象的变量。更具体地说: 我的名单是: 所需的映射结构是:
我在从一个表中插入一个列的值作为另一个表中的列时遇到了麻烦。我在col1中有一些值的表A:和另一个列等于col1值的表B。 我想把表A,col1中的其余值添加为表B中的列。请帮助我解决我的问题。我正在使用SQL server 2012。