kotlin常用表达式let,?:,as?,?.,!!

news/2024/6/18 2:17:15 标签: kotlin

kotlin常用表达式let,?:,as?,?.,!!

let

a?.let{it}

当a为null时,什么都不执行

当a不为null时,执行大括号里的语句(it肯定不为null)

object.let{

   it.todo() //函数内使用it替代object对象访问属性和方法

}

object?.let{

it.todo() //object不为null,才会执行let函数

}

?:

a ?: b

当a!=null时,执行a

当a==null时,执行b

as?

a as? b

如果a 是 b,则 a as b

如果 a 不是 b,则为 null

?.

a?.b()

如果a != null,则a.b()

如果a == null ,则为 null

!!

a!!
如果a!=null,执行a
如果a==null,抛出空指针


http://www.niftyadmin.cn/n/167049.html

相关文章

Linux-screen相关命令

Linux-screen相关命令 screen 的创建、恢复、删除命令 创建: screen -S name查看有多少会话: screen -ls恢复: screen -r name先恢复没有则创建: screen -R name删除: screen -S name -X quitname为你查看到的screen …

SpringBoot中自动配置的原理(启动类注解)

Java知识点总结:想看的可以从这里进入 目录1.4、自动配置和主启动类1.4.1、启动类注解1.5.2、导入选择器1.5.3、自动配置机制1、factories 文件2、实现原理1.5.4、自动配置的图解1.4、自动配置和主启动类 什么是自动配置?SSM在使用时需要进行一系列的配…

【剧前爆米花--爪哇岛寻宝】java--线程不安全的原因及解决方法

作者:困了电视剧 专栏:《JavaEE初阶》 文章分布:这是关于线程安全相关的文章,在该文章中,我梳理了造成线程不安全的原因和使线程变安全的方法,希望对你有所帮助! 目录 线程的安全问题 什么是线…

Guitar Pro8.1升级版本新功能支持编写简谱

很多人在听到Guitar Pro这个名词时,本能反应就是跟吉他有关的软件吧,但是具体是什么样子,有什么功能我们却不一定知道的那么详细,下面呢,我们就来详细的介绍下Guitar Pro这款软件。 Guitar Pro是初学作曲,特…

Apache DophinScheduler 定时调度Python脚本

前言 本文通过定时调度Python的例子演示了Apache DophinScheduler 的基本操作: 创建租户指定用户的租户创建Python环境创建项目创建工作流上线项目设置调度时间上线定时管理查看日志 1.创建租户 安全中心 -> 租户管理 -> 创建租户 这一步是将操作系统的账…

springboot项目处理异常流程

后端项目分层一般如下:控制层:controller业务层:service数据访问层:dao下面演示在实际项目中,移除统一处理流程:这篇文章的处理原则:controller负责异常统一处理,业务层负责把异常抛…

HTTP协议详解(一)

目录 1.什么是HTTP协议? 2.HTTP的协议格式 使用fiddler抓包工具 理解代理 查看请求内容 3.HTTP请求(Request) 认识URL URL encode 认识method GET方法 POST方法 经典面试题:POST和GET之间的典型区别 其它方法 认识请求 "报头" (header) Host Conte…

ROS学习(2)( service and client)

当节点使用服务进行通信时,发送数据请求的节点称为客户端节点,响应请求的节点称为服务节点。请求和响应的结构由.srv文件确定。 这里使用的例子是一个简单的整数加法系统;一个节点请求两个整数之和,而另一个节点以结果响应。 创建对应服务功…