kotlin内联函数——runCatching

1.runCatching作用

代替try{}catch{}异常处理,用于捕获异常。

2.runCatching函数介绍

  • 参数:上下文引用对象为参数
  • 返回值:lamda表达式结果

调用runCatching函数,如果调用成功则返回其封装的结果,并可回调onSuccess函数;如果在执行块函数时抛出了任何Throwable异常,则捕获该异常并将其封装为一个失败结果,并回调onFailure函数。例如,

Kotlin 复制代码
var name: String?= null
name.runCatching {
        Log.d(TAG, "runCatching#${this!!.length}")
   }.onSuccess {
        Log.d(TAG, "runCatching#onSuccess:${it.toString()}")
   }.onFailure { 
        Log.d(TAG, "runCatching#onFailure:${it.message}") 
   }
相关推荐
靓仔建15 小时前
Vue3导入组件出错does not provide an export named ‘user_setting‘ (at index.vue:180:10)
开发语言·前端·typescript
赶路人儿16 小时前
UTC时间和时间戳介绍
java·开发语言
6+h16 小时前
【java】基本数据类型与包装类:拆箱装箱机制
java·开发语言·python
17 小时前
深度解析Compose中的BoxWithConstraints
android·kotlin·android jetpack
jolimark17 小时前
MySQL--》如何在MySQL中打造高效优化索引
android·mysql·adb
book123_0_9917 小时前
【MySQL】MySQL函数之JSON_EXTRACT
android·mysql·json
未来之窗软件服务18 小时前
幽冥大陆(一百12)js打造json硬件管道——东方仙盟筑基期
开发语言·javascript·算法·json·仙盟创梦ide·东方仙盟·东方仙盟算法
人道领域18 小时前
苍穹外卖:菜品分页查询与删除功能(保姆级详解)
java·开发语言·数据库·后端·spring
EverestVIP18 小时前
c++前置声明的方式与说明
开发语言·c++
冬奇Lab18 小时前
ContentProvider与Uri权限:跨应用数据共享
android·源码阅读