Kotlin 常见的一些符号作用
总结下在kotlin常使用的一些东西和含义
val与var
1 | val 是常量 |
?
我们经常能够遇到这个,kotlin提供了很好的编译检查功能,其中 ? 有一些常用的地方
1 | private var name: String? = null |
这个表示 变量 name 能够为空值
1 | val video = Video.create() |
这个说明如果video 不为空,那么就会调用play方法
1 | fun name(name:String?) { |
这里面告诉使用者,name有可能是一个空值
1 | fun name(name:String?):String? { |
这里面告诉使用者,name方法返回可能是一个空值
!!
使用的过程中也经常遇到
1 | val video = Video.create() |
我们可以写 video!! ,这会返回一个非空的video b 值 或者如果 video 为空,就会抛出一个 NPE 异常
::
1 | startActivity(Intent(this@KotlinActivity, MainActivity::class.java)) |
得到类的Class对象
?:
一般存在2中写法,
1 | val a: Int = if (b != null) b.length else -1 |
在kotlin中 条件表达式具备返回值,上面的写法我们可以用Elvis操作符(?:)来简写
1 | val a: Int = b?.length ?: -1 |
这样是不是简单了很多呢
== 与 ===
== 判断值是否相等。
=== 判断值及引用是否完全相等。
1 | val num = 128 |
a == b = true
a === b = false
a 和 b 都是一个常量,引用的地址当然是不一样的
_
这个一般是选择忽略返回值
1 | data class Book(var id: Int, var name: String) |