Kotlin 中 Swift “if let” 語句的等價語句
Swift 中的“if let”是一個條件檢查運算子,用於檢查引用變數是否為 NULL。這是一種非常有用的技術,可以使用 Swift 語言來評估解包可選值。
在 Kotlin 中,我們不能直接使用此運算子。相反,我們將使用“let”和“run”來評估相同的內容。在下面的示例中,我們將看到如何使用 Kotlin 庫類使用“let”和“run”。
示例:使用 'let' 和 'run' 進行空值檢查
在此示例中,我們將檢查引用變數的值是否為 NULL。如果引用變數的值為 NULL,則將執行 'let' 程式碼塊,否則將執行 'run' 程式碼塊。
fun main(args: Array<String>) {
val b="TutorialsPoint"
val a = b?.let {
// If b is not null
println("First block");
} ?: run {
// If b is null.
println("Second block");
}
}輸出
在我們的示例中,我們正在檢查變數“b”的值是否為 NULL。由於變數不為 NULL,因此編譯器將執行 'let' 程式碼塊,相應的輸出將為“第一個程式碼塊”。
First block
現在,讓我們將 'b' 的值更改為 NULL,如下所示。
示例
fun main(args: Array<String>) {
val b= null
val a = b?.let {
// If b is not null.
println("First block");
} ?: run {
// If b is null.
println("Second block");
}
}輸出
現在輸出將更改為“第二個程式碼塊”,因為編譯器將執行 'run' 程式碼塊。
Second block
示例:使用 'also' 和 'run' 進行空值檢查
空值檢查也可以使用 Kotlin 中的 'also' 函式來實現。在此示例中,我們將看到它是如何工作的。我們將修改上面的程式碼並檢查變數“b”的值是否為 NULL。
fun main(args: Array<String>) {
val b:String? = null
b?.also{
println("First block") // For not NULL value
}?:run{
println("Second block") // For NULL value
}
}輸出
Second block
在上面的示例中,變數的值明確地保持為“NULL”,因此我們得到輸出“第二個程式碼塊”。一旦我們修改“b”的值,那麼我們將得到輸出“第一個程式碼塊”。
fun main(args: Array<String>) {
val b:String? = "TutorialsPoint"
b?.also{
println("First block")
}?:run{
println("Second block")
}
}輸出
First block
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP