什么是 Kotlin 双惊叹号 (!!) 运算符?
在 Kotlin 中,“!!”是称为双惊叹号运算符的运算符。此运算符也称为“非空断言运算符”。此运算符用于将任何值转换为非 NULL 类型值,如果对应的值是 NULL,则会抛出异常。在以下示例中,我们将看到如何使用此双惊叹号运算符。
示例 1
在此示例中,我们将考虑一个变量 "name",作为一个程序员,我们希望在 "name" 的值是 NULL 时抛出一个 NULL 指针异常。现在,执行以下代码
fun main(args: Array<String>) { var name: String? name = null println(name) }
输出
它将生成以下输出 -
null
此代码实际上并未解决我们的需求声明。我们希望在 "name" 的值为 NULL 时抛出 NULL 指针异常。让我们借助双惊叹号运算符(!!)修改前面的示例。
示例 2
fun main(args: Array<String>) { var name: String? name = null // Nothing has been used to resolve overload ambiguity exception println(name!! is Nothing?) }
输出
它将抛出运行时的 NULL 指针异常 -
Exception in thread "main" java.lang.NullPointerException at MainKt.main(main.kt:6)
广告