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}") 
   }
相关推荐
洛阳泰山21 分钟前
Java实现周易六爻自动排盘:根据起卦的公历时间换算农和干支时间,推算日柱空亡(旬空)
java·开发语言·周易·六爻·算卦
奋斗的小鹰35 分钟前
在已有Android工程中添加Flutter模块
android·flutter
Smile丶凉轩40 分钟前
C++ 高性能内存池面试题总结
开发语言·c++
介一安全1 小时前
【Frida Android】实战篇13:企业常用非对称加密场景 Hook 教程
android·网络安全·逆向·安全性测试·frida
世转神风-1 小时前
qt-pro文件名词解释
开发语言·qt
Fantastic_sj1 小时前
[代码例题] var 和 let 在循环中的作用域差异,以及闭包和事件循环的影响
开发语言·前端·javascript
lin62534222 小时前
Android右滑解锁UI,带背景流动渐变动画效果
android·ui
weixin_462446232 小时前
EasyExcel 动态修改模板 Sheet 名称:自定义 SheetWriteHandler 拦截器
java·开发语言·easyexcel
绝世唐门三哥2 小时前
使用Intersection Observer js实现超出视口固定底部按钮
开发语言·前端·javascript
Ayu阿予2 小时前
C++从源文件到可执行文件的过程
开发语言·c++