Kotlin學習筆記(三) 條件.循環

1.if條件判斷

(1)直接賦值:java

與java不一樣的是,kotlin的if條件判斷後的結果能夠直接賦值給一個變量,以下:spa

var min = if ( a > b ){ a } else { b }

 (2)區間:code

fun main(args: Array<String>) {
   var a = 9
    if(a in 5..10){
        println("$a 在區間中")
    }
}


輸出結果爲:    9 在區間中

2.when

     在kotlin中,when的用法與java中的switch...case的效果相同;get

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)
    }
}
相關文章
相關標籤/搜索