Joe*_*Joe 2 java arraylist hashmap
晚间!
我有以下地图:
HashMap<String, ArrayList> myMap = new HashMap<String, ArrayList>();
Run Code Online (Sandbox Code Playgroud)
然后,我向其中添加了以下数据:
ArrayList myList = new ArrayList();
myList.add("Test 1");
myList.add("Test 2");
myList.add("Test 3");
myMap.put("Tests", myList);
Run Code Online (Sandbox Code Playgroud)
这给我留下了以下数据:
关键:测试
值:测试1,测试2,测试3
我的问题是,如何将新值添加到我现有的键上?因此,例如,如何将值“ Test 4”添加到键“ Tests”上。
谢谢。
我建议使用Map#computeIfAbsent,以始终确保List从地图检索a :
private final Map<String, List<String>> example = new HashMap<>();
private List<String> getList(String key) {
return this.example.computeIfAbsent(key, k -> new ArrayList<>());
}
//elsewheres
getList("test").add("foobar");
getList("test").forEach(System.out::println); // "foobar"
Run Code Online (Sandbox Code Playgroud)
这意味着,如果地图不包含的条目key,它将使用提供的lambda生成键的新值并将其返回。
| 归档时间: |
|
| 查看次数: |
5569 次 |
| 最近记录: |