ArrayList userItem = new ArrayList();
userItem.add(item.getUserId()+"|"+item.getEmail()+"|"+item.getImgInstance());
ArrayList userItem = onlineUsers.get(item.getImgInstance());
Я хочу знать, что будет делать последняя строка с этим списком, добавит ли она значение thisUget.get (item.getImgInstance()) в предыдущей строке или что-то еще? как он отслеживает добавление элемента?Что произойдет с arraylist в этом коде?
P.s, если вы можете с удовольствием объяснить структуру ArrayList.
Спасибо отредактирован:
К сожалению, ребята, вы не поняли, что я пытался спросить, потому что я не поставил полный код его на самом деле это
HashMap> onlineUsers = новый HashMap (100);
for(DBPresence item : listPresence){
if(onlineUsers.containsKey(item.getImgInstance())){
ArrayList userItem = onlineUsers.get(item.getImgInstance());
userItem.add(item.getUserId()+"|"+item.getEmail()+"|"+item.getImgInstance());
}else{
ArrayList userItem = new ArrayList();
userItem.add(item.getUserId()+"|"+item.getEmail()+"|"+item.getImgInstance());
onlineUsers.put(new Integer(item.getImgInstance()),userItem);
}
}
return new DBPresenceResponse(onlineUsers, _encapusulationText);
он не скомпилирует, кто-то быстро отредактирует его код! :) – willcodejavaforfood
используя наш шестой смысл, я думаю;) – Bozho
ArrayList - просто оболочка для массива. Когда вы используете метод add, это происходит как smt как значение [a.size + 1] = (с расширением), и когда вы вызываете get, вы запрашиваете элементы, которые идут в некоторой позиции a.get (v) = a [v]. –