try {
} catch (ex: MyException1, MyException2 ) {
logger.warn("", ex)
}
或
try {
} catch (ex: MyException1 | MyException2 ) {
logger.warn("", ex)
}
结果出现编译错误:Unresolved reference: MyException2
.
如何在 Kotlin 上同时捕获多个异常?
最佳答案
更新: 为以下问题投票 KT-7128如果你想让这个功能登陆 Kotlin。 感谢@Cristan
据此thread目前不支持此功能。
abreslav - JetBrains Team
Not at the moment, but it is on the table
不过,您可以模仿多重捕获:
try {
// do some work
} catch (ex: Exception) {
when(ex) {
is IllegalAccessException, is IndexOutOfBoundsException -> {
// handle those above
}
else -> throw ex
}
}
https://stackoverflow.com/questions/36760489/