Назад к задачам
Junior — Senior
6

Проверка выполнения assert при работе со scope‑функциями

Получайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Условие задачи

Нужно определить, будет ли выполнен assert в следующем фрагменте кода. Обратите внимание на различия между использованием apply и let.

data class Student(val firstName: String, val secondName: String)

fun main() {
    val pupil = Student("Ivan", "Ivanov")

    val newSurname = "Petrov"
    val applied = pupil.apply { Student(firstName, newSurname) }
    val letted = pupil.let { Student(it.firstName, newSurname) }

    assert(applied == letted)
}