Я хочу, чтобы мой код был чистым, есть следующие проблемы. Я хочу добавитьКак правильно объединить Hashmap <String, ArrayList <Object>> и HashMap <String, Object>
HashMap<String,Object> currentItem;
в моей памяти
HashMap<String, ArrayList<Object>> storage;
следующим образом:
Добавить все Object
из currentItem
в ArrayList<Object>
из storage
по клавишам (все они тоже самое).
Это мой вариант, как добавить CurrentItem на хранение в соответствии с ключами
if (storage.containsKey("article_link"))
{Object tmpObj;
ArayList<Object> listTemp;
tmpObj = currentItem.get("article_link");
listTemp = storage.get("article_link");
listTemp.add(tmpObj);
storage.put("article_link", listTemp);
tmpObj = o.get("image");
listTemp = storage.get("image");
listTemp.add(tmp);
storage.put("image", rrr);
}
и этого для каждого ключа HashMap. Я могу написать специальную функцию для повторения кода, но я надеюсь, что ее можно решить проще.
Спасибо.
Вам необходимо проверить нуль после вызова 'listTemp = output.get()'. Возможно, что текущая карта содержит ключи, отсутствующие в выходной карте. – user949300
Что вам нужно, это неясно, но вас может заинтересовать MultiMap от guava (которые по существу являются некоторыми «Map>». –
assylias
@ user949300 Код обновления. Извините «output» это мое «хранилище» – pavelartlover