2013-02-25 5 views
0

Я создаю ArrayList в карте с помощьюКак добавить элементы в ArrayList на карте?

Map <String, ArrayList<String>> firmMSAMap = new HashMap<String, ArrayList<String>>() ; 

Как добавить элементы в ArrayList в этой карте? Пожалуйста, поправьте меня, если мое разглашение неверно. Я пытаюсь иметь карту, которая содержит ArrayList

+1

В чем конкретно заключается проблема? У вас есть еще один образец кода для публикации? Вы читали API? Что вы пытаетесь достичь? –

+0

Я пытаюсь создать временный ArrayList, например 'List temp = new ArrayList ', а затем сделать 'firmMSAMap.put (Key, temp);' – TheRookierLearner

+0

И что именно мешает вам это сделать? – Ingo

ответ

7

Добавьте строку foo в ArrayList шпонкой строкой baz:

firmMSAMap.get("baz").add("foo"); 

Приведенный выше код выполняет следующие действия:

  1. Он извлекает ArrayList хранимого с помощью ключа baz
  2. Он добавляет строку в ArrayList

ПРИМЕЧАНИЯ: Это предполагает, что карта уже содержит значение для КИ `База.

В противном случае вам придется создать новый ArrayList вроде этого:

firmMSAMap.put("baz", new ArrayList<String>()); 

Вот лучший пример, который проверяет, является ли значение отображается первым:

Map<String, List<String>> theMap = ... 

if (theMap.containsKey("baz")) { 
    theMap.get("baz").add("foo"); 
} 
else { 
    List<String> tempList = new ArrayList<String>(); 
    tempList.add("foo"); 
    theMap.put("baz", tempList); 
} 
+0

Почему нисходящий? – jahroy

+0

Нет, значение ArrayList , а не String. Извините, не прочитал правильно - это предполагает, что ArrayList уже создан. –

+0

@SteveH. - На самом деле да. Вопрос в том, как добавить String в ArrayList. – jahroy

0

Вы должны определить новый объект ArrayList и поставить его с ключом

1

Вы должны get что ArrayList from map и add Элемент к нему, как

firmMSAMap.get("your List key").add("new element of list"); 

Но, конечно, чтобы быть в состоянии сделать это карту нужно содержать, что «ваш ключ List» -> ArrayList пару первых, так что вам нужно put его там до

firmMSAMap.put("your List key", new ArrayList<String>()); 
-1

Это отображает ключи типа String в ArrayList значения. Поэтому, если вы хотите использовать ArrayList в ключе «foo», то:

firmMSAMap.put("foo", new ArrayList<String>()); 
+2

OP хочет знать как добавить элементы в 'ArrayList', содержащиеся на карте. – GriffeyDog

Смежные вопросы