@MaximIs

Как добавить значение VALUE в HASHMAP если оно представлено в виде ArrayList?

Добрый день, есть Hashmap>. Если ключ содержиться в hashmap, нужно к текущей коллекции добавить еще одну коллекцию. Знаю только один метод AddAll, но т.к. он boolean, не работает.
  • Вопрос задан
  • 54 просмотра
Решения вопроса 2
zagayevskiy
@zagayevskiy Куратор тега Java
Android developer at Yandex
Нужно использовать метод computeIfPresent
А внутри лямбды уже вычислить новый список, используя addAll, например.
А если нужно также добавлять элемент, в случае, когда ключа нет, просто используй compute
Ответ написан
@MaximIs Автор вопроса
Реализовал решение следующим образом
public void Add(String name, String... phones)
    {
        ArrayList<String> arrayList = new ArrayList<>();
        arrayList.addAll(Arrays.asList(phones));
        if(contacts.containsKey(name)) {
            arrayList.addAll(contacts.get(name));
            contacts.put(name, arrayList);
        }
        else {
            contacts.put(name, arrayList);
        }
    }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
ОТП Банк Москва
от 240 000 до 270 000 ₽
Sportmaster Lab Санкт-Петербург
от 150 000 ₽
Эвотор Москва
от 180 000 до 250 000 ₽