В чем разница между nullabe и ненулевым типом в Kotlin - PullRequest
0 голосов
/ 04 февраля 2019

Пожалуйста, объясните разницу между обнуляемым и ненулевым типом.Я новичок в kotlin, и я в замешательстве.Спасибо

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

если переменная имеет тип NULL, то переменная может иметь значение или значение NULL, и программа не будет принудительно закрываться, как большинство программ на основе Java с Исключение с нулевым указателем Сообщения об ошибках.

например:

val data: DataResponse? = null

это более экономно, чем вы используете val data: String , потому что когда ваши data variabel не имеют значения или ноль, когда выиспользуйте его, ваша программа не будет закрытавы можете использовать данные переменную следующим образом:

your_text.text = data 

и ваш код не будет принудительно закрываться.

, но если ваш код такой, это означает, что nonNullable .

val data: DataResponse

ваши приложения будут принудительно закрываться в то время, когда вы используете вашу переменную

0 голосов
/ 04 февраля 2019

Nullable типы могут содержать null .Когда тип обнуляется, вопросительный знак устанавливается после его типа:

val str: String? = null

Не обнуляемые типы не могут содержать нули :

val str: String = "some value"

Если мы попытаемся установить значение null на Тип, не обнуляемый , IDE выдаст ошибку и код не будет скомпилирован:

val str: String = null // error, the code won't compile

Здесь вы можете узнать больше о Null Safety .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...