在Kotlin中,可以使用when
表達式來實現模式匹配。when
表達式類似于switch
語句,但更加強大和靈活。你可以為不同的情況提供不同的處理邏輯,也可以使用模式匹配來匹配不同的數據類型或條件。
以下是一個簡單的示例,展示了如何在Kotlin中使用when
表達式實現模式匹配:
fun describe(obj: Any): String {
return when (obj) {
is Int -> "Integer"
is String -> "String"
is Double -> "Double"
else -> "Unknown"
}
}
fun main() {
println(describe(42)) // 輸出 "Integer"
println(describe("Hello")) // 輸出 "String"
println(describe(3.14)) // 輸出 "Double"
println(describe(true)) // 輸出 "Unknown"
}
在上面的示例中,describe
函數接受一個參數obj
,使用when
表達式來進行模式匹配并返回對應的描述。當傳入不同的參數時,when
表達式會根據參數的類型進行匹配,并執行對應的處理邏輯。
除了類型匹配,when
表達式還支持其他模式匹配,比如范圍匹配、值匹配、條件匹配等。通過靈活運用when
表達式,可以更加方便地進行模式匹配處理。