gpt4 book ai didi

java - 将列表中的值添加到 Map 中已存在的键

转载 作者:行者123 更新时间:2023-12-02 14:56:16 25 4
gpt4 key购买 nike

晚上好!

我有以下 map :

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

我的问题是,如何将新值添加到已有的 key 上?例如,我如何将值“Test 4”添加到我的键“Tests”上。

谢谢。

最佳答案

我建议使用 Map#computeIfAbsent,以始终确保从 map 中检索 List:

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"

这意味着,如果映射不包含的条目,它将使用提供的 lambda 为该键生成一个新值并返回该值。

关于java - 将列表中的值添加到 Map 中已存在的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37125505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com