Если в мапу добавить ключ 'Вася' со значением 21, а потом тот же ключ со значением 10, что вернётся при get('Вася')?

В обычной изменяемой Map повторный put с равным ключом заменяет прежнее значение. После записи 21, а затем 10 вызов get("Вася") вернёт 10.

Короткий ответ

Что ответить на собеседовании

В обычной изменяемой Map повторный put с равным ключом заменяет прежнее значение. После записи 21, а затем 10 вызов get("Вася") вернёт 10.

Подробный разбор

Ответ с пояснениями

В обычной изменяемой Map повторный put с равным ключом заменяет прежнее значение. После записи 21, а затем 10 вызов get("Вася") вернёт 10.

Пример для Java:

Map<String, Integer> ages = new HashMap<>();
ages.put("Вася", 21);
Integer previous = ages.put("Вася", 10);
System.out.println(ages.get("Вася")); // 10

В previous будет 21, а размер карты останется равным единице. Это не добавление второго элемента и не сложение значений. Поведение предполагает обычную изменяемую карту и отсутствие параллельных изменений; неизменяемая карта операцию записи не поддерживает.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее