var:可变变量,可以通过重新分配来改为另一个值的变量。
val:只读变量,这种声明变量的方式相当于java中的final变量。一个val创建的时候必须初始化,因为以后不能被改变。
When的存在取代了java中的switch:
如:
when (obj) {
1 -> "One"
"Hello" -> "Greeting"
is Long -> "Long"
!is String -> "Not a string"
else -> "Unknown"
}
同时也可以使用in操作符检查集合是否包含某个对象
val items = setOf("apple", "banana", "kiwi")
when {
"orange" in items -> println("juicy")
"apple" in items -> println("apple is fine too")
}
如果函数返回 Unit ,返回类型应该省略。