前言
Android原生开发,越来越多的公司加上「熟悉Kotlin」这条招聘要求,被如火如荼的Flutter浪潮淹没,大家可能都忘了,在今年五月的Google I/O大会上,官方曾宣布:「Kotlin编程语言是Android应用开发的首选语言」!
初次接触Kotlin已是三年前,在上家公司用Kotlin重构了平板的应用市场和电台APP。说来惭愧,至今还是一个API选手,不过相信在座很多Android开发和我一样,都停留在会用的程度。
不想止步于会用,还想了解下原理,所以有了这个系列。先来刨一刨Kotlin中的空安全~
0x2、Kotlin里的空安全怎么用
NullPointerException(NPE),空指针异常,在Java开发时,如果不想遇到这种异常,需要在使用前不停地判断它是否为Null。而在Kotlin中是空安全的,在编译期就处理Null,以此避免执行时异常。另外空安全不是Kotlin特有的,其他很多的变成语言也有,接着简单描述下Kotlin空安全的相关用法。
① 非空类型与可空类型
Kotlin中通过「非空类型」和「可空类型」来规避空NPE,非空类型不能设置为Null值:

可空类型可以设置为Null值,在类型后加上 可空操作符(?) 即可,代码示例如下:

可空类型,直接访问它的属性或方法,会报错:

本文深入探讨Kotlin的空安全特性,包括非空类型与可空类型的区别,安全调用操作符(?.)、Elvis操作符(??)、安全类型转换的使用,以及Kotlin如何在编译期防止空指针异常。同时,文章指出在与Java互操作时的空安全问题,并解析了Kotlin实现空安全的底层机制。
最低0.47元/天 解锁文章
5929

被折叠的 条评论
为什么被折叠?



