как применить merge
У мапы в качестве value выступает ArrayList, как при помощи .merge() добавить элементы в value мапы? допустим мне нужно дополнить value у пары "three":list3. Чтобы было "three":["три"], а стало "three":["три"], ["что-то еще"] что нужно вписать заместо arg2 и func в строке: map.merge("three", arg2 , (a, b)-> func);?
public class Test3 {
public static void main(String[] args) {
Map<String, List<String>> map = new HashMap<>();
List<String> list1 = new ArrayList<>();
List<String> list2 = new ArrayList<>();
List<String> list3 = new ArrayList<>();
list1.add("один");
list2.add("два");
list3.add("три");
map.put("one", list1);
map.put("two", list2);
map.put("three", list3);
map.merge("three", arg2 , (a, b)-> func);
}
}
Ответы (1 шт):
Автор решения: Sergey Gornostaev
→ Ссылка
List<String> arg2 = new ArrayList<>();
arg2.add("четыре");
map.merge("three", arg2, (a, b)-> {
a.addAll(b);
return a;
});