美文网首页
Day03控制语句

Day03控制语句

作者: 鹅鹅鹅曲项向天歌呀 | 来源:发表于2019-03-31 21:34 被阅读0次

    1、if语句
    2、for语句
    3、white语句
    4、do...white语句
    5、return、break、continue

    一、if语句

    1、和java中的 if 用法一样

    2、if 的三元运算符

    3、在表达式中应用,最后一句表达式为块的值
    Demo:

        //1、和Java一样的用法
        var a = 5
        if (a < 10) {
            println("true")
        } else {
            println("false")
        }
        //2、三元运算
        var b: Int = if (a < 10) 5 else 10
        println("b的值为:$b")
        //3、在表达式中应用,最后一句表达式为块的值
        var c: Int = if (a < 5) {
            a--
            a
        } else if (a == 5) {
            a++
            a
        } else {
            a++
            a
        }
        println("c的值为:$c")
        println("a的值为:$a")
    
    结果图: 结果图01.png

    二、for语句

    kotlin中废除了 for(初始值;条件;增减步长) 这个规则
    1、递增 until
      until[n,m)  =>  即大于等于n,小于m
    2、递减 downTo
      downTo[n,m]  =>  即小于等于n,大于等于m ,n > m
    3、符号( .. ) 表示递增的循环
      ..[n,m] =>  即大于等于n,小于等于m
    4、设置步长
      step
    5、遍历数组
      1、普通便利
      2、根据数据的 indices 属性来遍历
      3、根据数据的 withIndex() 来遍历

      //1、until
        for (i in 0 until 3) {
            print("$i\t")
        }
        println()
        //2、downTo
        for (i in 3 downTo 0) {
            print("$i\t")
        }
        println()
        //3、 .. 和until的范围不同,但是更简洁
        for (i in 0..3) {
            print("$i\t")
        }
        println()
        //4、 设置步长step
        for (i in 0 until 10 step 2) {
            print("$i\t")
        }
        println()
        //5、遍历数组
        //1、普通便利
        var arraye = arrayOf(1, 2, 3, 4, 5)
        for (index in arraye) {
            print("$index\t")
        }
        println()
        //2、根据数据的 indices 属性来遍历
        for (index in arraye.indices) {
            print("下标=$index 值=" + arraye[index] + "\t|")
        }
        println()
        //3、根据数据的 withIndex() 来遍历
        for ((index, value) in arraye.withIndex()) {
            print("下标=$index 值=" +value + "\t|")
        }
    
    结果图: 结果图02.png

    三、white语句

    1、和 java 中的用法一样

        var num = 5
        while (num < 10){
            print("num = $num\t")
            num++
        }
    

    四、do...white语句

    1、和Java中的一样

       var num = 5
        do {
            println("num => $num")
            num++
        }while (num < 10)
    

    五、when语句

    1、kotlin中废除了switch,取而代之when
    2、比switch更强大
      0、普通使用
      1、使用逗号分隔,相当switch中不适用break跳转语句
      2、条件可以任意使用, 不限于常量
      3、检查值是否存在于集合或者数组中
       (in) 在 ; (!in) 不在 ,只使用数值类型
      4、检查值是否为指定类型
       (is) 是 ; (!is) 不是
      5、不适用表达式的when语句

      //0、普通使用
        when (1) {
            1 -> {
                println("1")
                println("只有一行逻辑表示时,时可省略{}")
            }
            2 -> println("2")
            else -> {
                println("0")
            }
        }
        //1、使用逗号分隔,相当switch中不适用break跳转语句
        when (2) {
            1 -> {
                println("1")
            }
            2, 3, 4 -> println("2")
            5 -> println("5")
    
        }
        //2、条件可以任意使用, 不限于常量
        var i: Int = 6
        when (i > 5) {
            true -> println("true")
            false -> println("false")
        }
        //3、检查值是否存在于集合或者数组作者范围中
        //(in) 在 ; (!in) 不在 ,只使用数值类型
        var arrayList = arrayOf(1, 2, 3, 4, 5)
        when (1) {
            in arrayList.toIntArray() -> println("1 在数组中")
            in 0..10 -> println("1 在这儿")
            !in 5..10 -> println("1 不在这儿")
        }
        //4、检查值是否为指定类型
        //(is) 是 ; (!is) 不是
        when ("abc") {
            is String -> println("abc是一个字符串")
            else -> println("abc不是一个字符串")
    
        }
        //5、不使用表达式的when语句
        var array = arrayOfNulls<String>(3)
        when{
            true -> {
                for (i in array){
                    print(" $i \t")
                }
                println()
            }
            else -> {
    
            }
        }
    
    结果图: 结果图03.png

    六、return、break、continue

    1、这些和java中使用一样哦~~

    fun main(args: Array<String>) {
        //return 默认情况下,从最近的封闭函数或匿名函数返回。
        returnExample()
        //break 终止最近的闭合循环。
        var count: Int = 1
        for (i in 1..5) {
            if (i == 2) {
                println("我在第$i 次退出了for循环")
                break
            }
            count++
        }
        println("我循环了多少次:count = $count")
        //contuinue 前进到最近的封闭循环的下一个步骤(迭代)。
        for (i in 1..6) {
            if (i % 2 == 0) {
                println("我跳过了第$i 次循环")
                continue
            }
        }
    }
    fun returnExample() {
        var str: String = ""
        if (str.isBlank()) {
            println("我退出了该方法")
            return
        }
    }
    

    结果图:


    结果图04..png

    ----------------------------THE END--------------------------

    相关文章

      网友评论

          本文标题:Day03控制语句

          本文链接:https://www.haomeiwen.com/subject/zwwubqtx.html