Скажем, что я повторяю карту в Java... Я не понимаю, что могу сделать для этой Карты, находясь в процессе итерации по ней. Наверное, я в основном смущен этим предупреждением в Javadoc для метода удаления интерфейса Iterator:
[...] Поведение итератора не определено, если базовая коллекция модифицирована, пока итерация выполняется каким-либо образом, кроме вызова этого метода.
Я точно знаю, что могу вызвать метод удаления без каких-либо проблем. Но, повторяя сборка карты, могу ли я:
-
Измените значение, связанное с ключом, с помощью метода put класса Map (поместить с существующим ключом)?
-
Добавить новую запись с помощью метода класса класса Map (поместить с новым ключом)?
-
Удалить запись с помощью метода удаления класса карты?
Моя догадка заключается в том, что я могу, вероятно, безопасно сделать # 1 (поставить существующий ключ), но не безопасно делать # 2 или # 3.
Заранее благодарим за какие-либо разъяснения по этому поводу.