Все квизы
Код-ревьюKotlinПродвинутый

Хеширование, расширения и ленивые вычисления

Проведи ревью небольших программ на Kotlin. Найди нестабильный hash-ключ, ошибочное ожидание полиморфизма от extension-функции, повторное вычисление Sequence и нелокальный выход из inline-лямбды.

Вопрос 1 из 4Один правильный ответ

Код-ревью

После изменения id выражение user in users печатает false, хотя в HashSet лежит тот же объект. Идентификатор входит в равенство модели, а обновлённую версию нужно создавать отдельно. Как сохранить корректность множества?

data class User(var id: Int, val name: String)

fun main() {
    val user = User(1, "Ada")
    val users = hashSetOf(user)
    user.id = 2
    println(user in users)
}
Выбери один ответ