上一篇 简单介绍了基本变量和函数的使用。这一篇我准备深入介绍下流程控制语句。毕竟流程控制在我们开发中还是占有很重要的地位的。废话不多说直接开始学习。。。。
1.0 if表达式
上一篇虽然已经介绍了if 表达式。但是还是没有深入的学习。首先 在kotlin中if 作为表达式是会返回一个值的。但是如果要使用这个返回值 那么需要带有else .日常举栗子
var max=if(a<b) b else a
那如果 if 里面是代码块 返回值是什么呢? 这个问题问的好。
if 每一个分支可以是一个代码块,它的值是块中最后的表达式的值
就是这样的。。
2.0when 表达式
when表达式 其实类似于 switch 又不太一样。日常举栗子
最简单用法
when (a) {
1 -> print("a == 1")
else -> {
print("xxxx")
}
}
如果多个条件 有同样的处理那么可以这样写
when (a) {
1,2 -> print("a == 1 or 2")
else -> {
print("xxxx")
}
}
除此以外还有一个,还有个很厉害的就是判断一个值是(is)或者不是(!is)一个特定类型的值 是什么意思呢。就是就是我 when 传入一个 变量 然后判断是不是 某一个特定类型
when (view) {
is TextView ->print("xx")
else ->print("xxx")
}
when 还支持 不传入参数。可以用来取代if else 但是必须分支条件是一个简单的布尔表达式。当分支为true 时 执行该分支语句
when{
a>b -> print("xx")
else -> print("xxxx")
}
3.0 while 表达式
while 表达式 的用法和java 差不多了。
while (x > 0) {
x--
}
--or--
do {
val y =3;
} while (y != null)
4.0 for 表达式
kotlin 中 for 循环也支持 迭代器对象遍历和索引遍历。日常举栗子
迭代器遍历
for ((k, v) in map) { // map 集合 的遍历
println("$k -> $v")
}
索引遍历 (indices 表示下标 索引)
fun xx ( str: Array<String>){
for( i in str.indices) {
print(str[i])
}
}
Ok 关于 Kotlin 中的 流程控制语句 基本就这些了。希望能帮到正在学习和使用的朋友们。我们下期再见。