1.if条件判断
(1)直接赋值:
与java不同的是,kotlin的if条件判断后的结果可以直接赋值给一个变量,如下:
var min = if ( a > b ){ a } else { b }
(2)区间:
fun main(args: Array<String>) {
var a = 9
if(a in 5..10){
println("$a 在区间中")
}
}
输出结果为: 9 在区间中
2.when
在kotlin中,when的用法与java中的switch...case的效果相同;
fun main(args: Array<String>) {
var a = 5
when(a){
5 -> print("我不是6")
6 -> print("我不是5")
in 3..9 -> print("我在区间里") //这里可以看到即使满足这个条件,但是先前已有满足,不在执行此代码块,故相当于每个条件分支后面都有break;
7,8 -> print("我是7或者8") //如果两个条件的方法体相同,可以使用','分割
else ->{ print("我不是5也不是6") } //这里的else相当于switch..case中的default作用
}
}
输出结果为:我不是6
3.for循环遍历
fun main(args: Array<String>) {
val array = arrayListOf<Int>(1, 2, 3, 4, 56, 7, 8)
//方法一
for (a in array){
println(a)
}
//方法二 查看源码可知array.indices返回的是get() = 0..size - 1,0到size-1的集合
for (i in array.indices){
println(array[i])
}
}
4.while和do...while
这两个用法和java中的用法相同,while()不满足条件不会执行,do{}while()至少会执行一次方法体;
5.foreach遍历
fun main(args: Array<String>) {
val array = arrayListOf<Int>(1, 2, 3, 4, 56, 7, 8)
array.forEach{
if (it ==3) //注意这里的it是kotlin默认的定义元素类似lambda中的foreach(one -> one)
return
println(it)
}
}