您的位置:首页 > 其它

Kotlin 基本语法 (二)

2017-05-27 09:43 369 查看
地址:http://kotlinlang.org/docs/reference/basic-syntax.html#using-a-while-loop

使用 while 循环

val items = listOf("apple", "banana", "kiwi")
var index = 0
while (index < items.size) {
println("item at $index is ${items[index]}")
index++
}


详情查看while 循环

使用 when 表达式

fun describe(obj: Any): String =
when (obj) {
1         -> "One"
"Hello"   -> "Greeting"
is Long   -> "Long"
!is String    -> "Not a string"
else      -> "Unknow"
}


译者按:这个表达式很像 switch 语句,不过能处理的类型比较宽泛


详情查看when 表达式

使用 ranges

使用
in
操作符来判断一个 number 是否在某个范围

val x = 10
val y = 9
if (x in 1..y+1) {
println("fits in range")
}


检查一个数字是否超出某个范围

val list = listOf("a", "b", "c")

if (-1 !in 0..list.lastIndex) {
println("-1 is out of range")
}

if (list.size !in list.indices) {
println("list size is out of valid list indices range too")
}


遍历一个 范围

for (x in 1..5) {
print(x)
}


设置遍历节奏

for (x in 1..10 step 2) {
print(x)
}

for (x in 9 downTo 0 step 3) {  // 从 9 到 0,反序遍历,步长为 3
print(x)
}


详情查看Ranges

使用集合

遍历一个集合

for (item in items) {
println(item)
}


检查一个集合是否包含某个元素

when {
"orange" in items -> println("juicy")
"apple" in items -> println("apple is fine too")
}


使用 lambda 表达式过滤和转化集合元素

fruits
.filter { it.startsWith("a") }
.sortedBy { it }
.map { it.toUpperCase() }
.forEach{ println(it) }


详情查看高阶函数 和 Lambda
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Kotlin