Kotlin異常

java異常與kotlin異常處理詳解

kotlin中的try是個表達式,是沒有checked exception的。。是運行時異常

fun main(args: Array<String>) {
    val a="1"
    val result:Int?=try{
        a.toInt()
    }catch (ex:NumberFormatException){
        null
    }finally {
        println("報錯了")
    }
}
  • throw是個表達式,這樣我們可以將throw作爲Elvis表達式的一部分
  • throw 表達式的類型是一種特殊的類型:Nothing。
  • 在代碼中,可以使用Nothing來標記永遠不會返回的函數。
fun method(message:String):Nothing{
    throw IllegalArgumentException(message)
}

fun main(args: Array<String>) {
    val str:String?="a"
    val str2=str?:throw IllegalArgumentException("值不能爲空")//?: 表示 前面不爲空,就賦值前面那個值,否則就拋異常  a
    //如果str=null就拋異常了。
    println(str)
    println("----------")
    val str3=str ?: method("sds")
    println(str3)
    println("----------")
    var a=null
    println(a is Nothing?) //true
    println("----------")
    var s= listOf(null)
    println(s is List<Nothing?>) //true
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章