1.9.3 安全调用运算符 (?.) 空安全与安全调用运算符 (?.) 的背景 空安全的核心思想是通过类型系统区分可空类型(nullable types)和非空类型(non-nullable types)。在 Kotlin 中,任何变量默认是非空的,这意味着它们不能持有 值。如果需要一个变量能够持有 ,则需要显式地声明其为可空类型,例如 。这种设计迫使开发者在编译时就考虑潜在的空值问题,从而避免运行时的意外崩溃。 安全调用运算符 (?.) 是 Kotlin 空安全机制中的关键工具之一。它允许开发者在调用对象的方法或访问其属性时,先检查该对象是否为 。如果对象非空,则正常执行调用;如果对象为空,则整个表达式的结果为 ,而不会抛出空指针异常。