【第三阶段】kotlin中使用带let的安全调用

let常常和?.配合使用,如果前面的对象为null,let不执行,能够执行到let里面 对象一定不为null

1.不为null

kotlin 复制代码
fun main() {
   var name:String?="kotlin" //name是一个可空类型,发出广播,调用的地方必须补救措施
 var r = name?.let{
      //it==name,如果能执行到这个里面it一定不为null
      if(it.isBlank()){ //如果it=""打印
        "default" 
      }else{
          "$it"
      }
  }
 println(r)
}

执行结果

2.为" "

kotlin 复制代码
   var name:String?=" " //name是一个可空类型,发出广播,调用的地方必须补救措施
 var r = name?.let{
      //it==name,如果能执行到这个里面it一定不为null
      if(it.isBlank()){ //如果it=""打印
        "default" 
      }else{
          "$it"
      }
  }
 println(r)
}

执行结果

3.为null

kotlin 复制代码
fun main() {
   var name:String?=null //name是一个可空类型,发出广播,调用的地方必须补救措施
 var r = name?.let{
      //it==name,如果能执行到这个里面it一定不为null
      if(it.isBlank()){ //如果it=""打印
        "default" 
      }else{
          "$it"
      }
  }
 println(r)
}

执行结果

相关推荐
南 阳1 分钟前
Python从入门到精通day62
开发语言·python
游乐码5 分钟前
c#stack
开发语言·c#
木子予彤7 分钟前
Android 性能诊断 V2:基于 Agent Skill 的原生 IDE 融合架构
android·ai编程
木子予彤10 分钟前
基于 Perfetto 与 AI 的 Android 性能自动化诊断方案
android·ai编程
cch891815 分钟前
Laravel vs 主流PHP框架:终极对决
开发语言·php·laravel
我能坚持多久16 分钟前
C++类与对象(中)
开发语言·c++
江奖蒋犟20 分钟前
【C++】map和set
开发语言·数据结构·c++·set·map
白杆杆红伞伞26 分钟前
Qt Event
开发语言·qt
Magic--26 分钟前
Qt 桌面计算器项目
开发语言·qt
李昊哲小课27 分钟前
Python办公自动化教程 - 第2章 单元格样式魔法 - 让表格变得美观专业
开发语言·python·excel·openpyxl