У меня есть 2 HashMap следующим образом:копия карты на другую новую карту
@Session
private Map< Integer, List<ObjectA>> keyMap;
@Session
private Map< Integer, List<ObjectA>> keyMap2;
Сначала я положил некоторые данные в keyMap
, а затем я пытаюсь сохранить данные в keyMap
для keyMap2
:
keyMap2 = keyMap;
И затем, я отредактирую некоторые данные внутри keyMap
. Однако значение внутри keyMap2
изменится как то, что я отредактировал в keyMap
.
Как я пониманию, это потому, что keyMap2
только точка keyMap
указатель, так что-то изменить в keyMap
, он будет отражать в keyMap2
, так же указателю. (Пожалуйста, исправьте меня, если я ошибаюсь.)
Я хочу сохранить значение keyMap2
без изменений, например keyMap
. Любую идею, отличную от петли я keyMap
, и поставьте 1 на 1 внутри keyMap2
.
'keyMap2 = новый HashMap <> (KEYMAP) '. – saka1029
привет @ saka1029, это не работает для меня. Я думаю, может быть, мой HashMap содержит список внутри. I и внести изменения в список для 'keyMap' –