在 Kotlin 中如何同時捕獲多個異常?


異常處理是任何程式語言的一個重要特性。它限制了我們的程式在執行時生成不正確的輸出。Kotlin 不支援同時丟擲多個異常,但我們可以使用 Kotlin 庫提供的其他一些函式來實現此功能。

示例 – 丟擲多個異常

在這個示例中,我們嘗試在執行時生成一個算術異常,並且我們將嘗試在catch 塊中捕獲相同的異常,並進行其他不同的異常檢查。

fun main(args: Array<String>) {
   val item=0
   var result=0
   try {
      result=item/0 // Exception: Division by Zero
   } catch (ex: Exception) {
      when(ex) {
         // inlcude multiple exceptions here
         is IllegalAccessException, is IndexOutOfBoundsException -> {
            println(ex)
         }
         is ArithmeticException ->{
            println(ex)
         }
         else-> throw ex
      }
   }
}

輸出

在此,我們在 catch 塊中丟擲多個異常。它將產生以下輸出 -

java.lang.ArithmeticException: / by zero

更新於:16-Mar-2022

2K+ 瀏覽

開啟你的 職業生涯

透過完成課程來獲得認證

開始使用
廣告