在 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
广告