Перейти к содержанию

🗒 Задача

Скопируй класс из предыдущей задачи и измени его название для избегания конфликтов.

  • перепиши его, используя определение свойств в основном конструкторе;

  • свойства не должны содержать значения по умолчанию (мы создаем каркас сущности для будущих объектов).

Cоздай объект с произвольными данными и выведи в консоль методом созданного класса.

❌ Ошибки

  • проблемы с форматированием, расположением свойств, скобок, неймингом и т.д.

  • инициализируют переменные в основном конструкторе значениями по умолчанию (даже null)

✏️ Комментарии

Согласно ТЗ ”свойства не должны содержать значения по умолчанию”. Определенное значение или null это будет – не важно. Свойства здесь должны быть проинициализированы в момент создания объекта. 
Закрывающая свойства скобка должна быть на новой строке (не забывай прожимать автоформат)
Эти свойства класса нигде не перезаписываются в данной реализации
Не рекомендуется миксовать расположение свойств в ряд и в столбик. Нужно выбрать что-то одно
Пропущен пробел после двоеточия
Рекомендую не забывать применять автоформатирование перед коммитом – параметры при инициализации объектов без пробелов

🧾 Решение

class WeatherData(
    var dayTemperature: Int,
    var nightTemperature: Int,
    var isPrecipitation: Boolean,
) {


    fun displayWeatherInfo() {
        println("Дневная температура: $dayTemperature°C")
        println("Ночная температура: $nightTemperature°C")
        println("Наличие осадков: ${if (isPrecipitation) "Да" else "Нет"}")
    }
}

fun main() {
    val weatherDay1 = WeatherData(
        dayTemperature = 20,
        nightTemperature = 14,
        isPrecipitation = true,
    )

    weatherDay1.displayWeatherInfo()
    println()

    val weatherDay2 = WeatherData(
        dayTemperature = 27,
        nightTemperature = 16,
        isPrecipitation = false,
    )

    weatherDay2.displayWeatherInfo()
}