Kotlin学习笔记(三) 条件.循环

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)
    }
}

猜你喜欢

转载自my.oschina.net/u/3220575/blog/1822054
今日推荐