什麼是 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+ 觀看次數

職業 的開端

完成該課程後獲取認證

開始
廣告
© . All rights reserved.