请解释可空类型和不可空类型之间的区别。我是 kotlin 的新手,我很困惑。
谢谢
问问题
255 次
2 回答
1
可空类型可以保存空值。当 type 可以为空时,问号设置在它的类型之后:
val str: String? = null
不可为空的类型不能包含空值:
val str: String = "some value"
如果我们尝试将null值设置为Non-nullable类型,IDE 会报错并且代码不会被编译:
val str: String = null // error, the code won't compile
于 2019-02-04T07:57:23.173 回答
0
当变量具有可为空的类型时,该变量可以具有值,或者也可以具有 null 值,并且程序不会像大多数基于 java 的带有空指针异常错误消息的程序那样强制关闭。
例如 :
val data: DataResponse? = null
它比你使用val data: String更节省,因为当你的数据变量没有值或 null 当你使用它时,你的程序不会在那个时候强制关闭。你可以像这样使用你的数据变量:
your_text.text = data
并且您的代码不会强制关闭。
但是如果您的代码是这样的,则意味着nonNullable。
val data: DataResponse
您的应用程序将在您使用变量时强制关闭
于 2019-02-04T08:34:57.580 回答