什么是 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)

更新日期: 2021 年 10 月 27 日

4K+ 观看次数

职业 的开端

完成该课程后获取认证

开始
广告