Что такое Nothing

«Что такое Nothing» — вопрос из категории Kotlin, который задают на 40% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Nothing в Kotlin — это специальный тип, который обозначает отсутствие значения. Он используется для функций, которые никогда не возвращают результат (например, бросают исключение или зацикливаются).

Пример:

fun fail(message: String): Nothing {  
    throw IllegalArgumentException(message)  
}  

fun main() {  
    val result = fail("Error") // Тип `result` — `Nothing`  
}  

Особенности:

  • Подтип всех типов (Nothing? совместим с любым nullable-типом).
  • Используется для TODO() и других функций, которые не завершаются нормально.