Kotlin习惯用法

记录一些Kotlin广泛使用的语法习惯.

创建数据类:

data class User(val name : String,val age : Int)
编译器将自动从主构造函数中声明的所有属性中导出一下成员:
所有属性的getters(对于var定义的还有setters)
equals()
hashCode()
toString()
copy()
...等等,具体可翻阅Kotlin官方使用文档

单例

object Resource {
val name = "Name"
}

过滤list

val listFilter =list.filter{ fun () : boolean }
方法体中返回Boolean类型,依次取出list集合中属性(默认it表示),满足条件的返回
listFilter是一个List 泛型与list相同

遍历map

for((key,value) in map){
      println("$k -> $v")
}

使用区间

for (i in 1..100) { …… } // 闭区间:包含 100
for (i in 1 until 100) { …… } // 半开区间:不包含 100
for (x in 2..10 step 2) { …… }
for (x in 10 downTo 1) { …… }
if (x in 1..10) { …… }

拓展函数(我觉得是个新鲜玩意)

fun String.spaceToCamelCase() { …… }
"Convert this to camelcase".spaceToCamelCase()

If not null 缩写

val files = File("Test").listFiles()
println(files?.size)

If not null and else 缩写

val files = File("Test").listFiles()
println(files?.size ?: "empty")

你可能感兴趣的:(Kotlin习惯用法)