Ясность является частью общего языкового дизайна в Kotlin.Не существует неявных значений по умолчанию для любых типов в языке Kotlin.Существует также желание препятствовать (неправильному) использованию пустых значений, поэтому в отношении инициализации нулевые значения ни в коем случае не считаются специальными.Если у вас есть необнуляемая строка var myString: String
, вам необходимо инициализировать ее чем-то так же, как вы должны инициализировать обнуляемую строку var myString: String?
чем-то, поэтому ее начальное значение всегда является явным.
Обратите внимание, технически говоря, String?
в Kotlin не является необязательной строкой в Kotlin.В Kotlin это называется nullable строка.Тем не менее, наиболее распространенным вариантом использования нулей является представление «отсутствия значения».