#428 Изменяемый ключ в HashMap
Что будет выведено на экран?
public class Main {
public static void main(String[] args) {
Map<Key, String> map = new HashMap<>();
Key key = new Key();
key.setKey("K1");
map.put(key, "val1");
key.setKey("K2");
System.out.println(map.get(key)); // Что выведет код?
}
static class Key {
private String key;
public void setKey(String key) {
this.key = key;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Key key1 = (Key) o;
return Objects.equals(key, key1.key);
}
@Override
public int hashCode() {
return Objects.hash(key);
}
}
}
Разбор вопроса
Войди, чтобы начать диалог
Ментор ведёт диалог по текущему вопросу и учитывает предыдущие сообщения.
Войти
Доступно с Premium
Это лишь одно из решений, доступных с Premium. А ещё:
- 250+ продвинутых лекций
- 1300+ практических заданий
- 500+ решений задач с реальных собеседований
- Именные сертификаты Java Hub
- Расширенный доступ к AI-ментору