面试题答案
一键面试在Kotlin中,可以使用runCatching
函数来处理可能抛出异常的部分,从而保证整个链式调用结构不受影响。
val result = runCatching {
listOf(1, 2, 3)
.map { it * 2 }
.filter { it > 5 }
.elementAt(0)
}.getOrElse { 0 } // 这里使用getOrElse处理异常,返回默认值0
在上述代码中,runCatching
会尝试执行其代码块中的链式调用。如果在链式调用的任何部分抛出异常,runCatching
会捕获该异常,并返回一个Result
对象。通过getOrElse
方法,如果执行成功则返回结果,如果抛出异常则返回指定的默认值(这里是0),从而避免异常影响整个链式调用结构。