美文网首页
kotlin(六):基本语法之返回跳转

kotlin(六):基本语法之返回跳转

作者: 小川君 | 来源:发表于2018-09-06 10:15 被阅读0次

kotlin与其他语言一样同样有三种跳出结构的方式

return 默认情况下,从最近的一个封闭的方法或者表达式跳出
break 跳出最近的封闭循环
continue 跳出本次循环 进入下次循环

kotlin中任何表达式都可以用lable{:.keyword}标签来标记,label的格式是被@标识符标记
如果有多重循环,带标签的break会跳转出标签所指示的那一个循环.带continue会调转到标签所指向的那个循环,进入该循环的下一次循环(常用语嵌套循环中)

fun test(){
    l@ for (index in 1..10){
            println("chuan: index $index")
        for(j in 1..10){
             println("chuan: j  $j")
            if(index == 4){
                continue@l
            }
            if(index == 5 && j == 3){
                breadk@l
            }
        
    }
    println("chuan----循环完毕----")
}
    
kotlinTest.test()

先来介绍下test函数这个结构体,总的是一个for循环,里面还嵌套有一个for循环,都是从一到十循环,内外层每次循环都会打印一次,主要是内层循环里面的判断,我们来看下
当外层循环等于4时,会终止当前循环,后面跟有一个@l标识,与外层循环开头命名的l@相对应,总的意思就是会跳出当前循环,并进行下一次的循环,但是跳出的不是内部循环,而是外部循环,可以参考下打印的日志,在外部循环打印了 chuan:index 4 以及内部循环打印了chuan:j 1之后,因为触发了判断条件,所以直接跳出了外部循环的本次循环,直接开始了外部循环的第五次循环,也就是日志所打印的chuan: index 5
再来看第二个判断,如果外部循环等于5,并且内部循环等于3的时候,直接break了,后面依然跟着@l,我们来看下日志,发现中断了外部循环,也就是中断了所有的循环,直接打印了 chaun----循环完毕----

完整输出如下:
2064-2064/com.chuan.jun I/System.out: chuan: index 1
    chuan: j  1
    chuan: j  2
    chuan: j  3
    chuan: j  4
    chuan: j  5
    chuan: j  6
    chuan: j  7
    chuan: j  8
    chuan: j  9
    chuan: j  10
    chuan: index 2
2064-2064/com.chuan.jun I/System.out: chuan: j  1
    chuan: j  2
    chuan: j  3
    chuan: j  4
    chuan: j  5
    chuan: j  6
    chuan: j  7
    chuan: j  8
    chuan: j  9
    chuan: j  10
    chuan: index 3
    chuan: j  1
2064-2064/com.chuan.jun I/System.out: chuan: j  2
    chuan: j  3
    chuan: j  4
    chuan: j  5
    chuan: j  6
    chuan: j  7
    chuan: j  8
    chuan: j  9
    chuan: j  10
    chuan: index 4
    chuan: j  1
    chuan: index 5
    chuan: j  1
    chuan: j  2
    chuan: j  3
    chuan----循环完毕----

关于返回语句return 没有什么太大的改动,但是kotlin中引入了内部函数,因此return如果在内部函数中使用的话,则会跳出内部函数,外部函数还是会继续的调用

  fun test(){
        println("进入test方法 ")
        fun returnMethod(age: Int){
            println("进入到returnMethod方法  $age")
            when(age){
                1 -> return
                else -> println("进入else")
            }
        }
        returnMethod(1)
        println("完毕")
    }
    
    
2919-2919/com.chuan.jun I/System.out: 进入test方法 
2919-2919/com.chuan.jun I/System.out: 进入到returnMethod方法  1
完毕

相关文章

  • kotlin(六):基本语法之返回跳转

    kotlin与其他语言一样同样有三种跳出结构的方式 return 默认情况下,从最近的一个封闭的方法或者表达式跳...

  • 【Kotlin从入门到深坑】之返回和跳转

    简介 本篇博客主要是介绍Kotlin语法中的【返回和跳转】相关的知识,帮助各位更快的掌握Kotlin,如果有疏漏或...

  • kotlin之基本语法

    函数 变量 字符串模板 类和属性 自定义访问器 目录和包 和java类似,但是kotlin不区分导入的是类还是函数...

  • Kotlin之基本语法

    创建 Javabean 对象 关键字:data 包含以下所有的属性: getters (and setters i...

  • kotlin进阶—函数、泛型、高级特性

    以下是我的kotlin系列文章kotlin基础知识—基本语法(一)kotlin基础知识—基本语法(二) 前言 我个...

  • Kotlin的基本语法六

    1.内联扩展函数之let let扩展函数的实际上是一个作用域函数,当你需要去定义一个变量在一个特定的作用域范围内,...

  • Kotlin快速入门

    快速浏览一下 Kotlin 的语法。 基本语法 包定义和引用 在源文件头部: 方法定义 带有方法体,并且返回确定类...

  • Kotlin (返回与跳转)

    返回与跳转 Kotlin 有三种结构跳转表达式: -- return 默认情况下从最近的闭合函数或者匿名函数返回。...

  • Kotlin返回与跳转

    借鉴kotlin中文站Kotlin 有三种结构化跳转表达式: return。默认从最直接包围它的函数或者匿名函数返...

  • Kotlin返回与跳转

    前言 你还在把Java当成Android官方开发语言吗?Kotlin了解一下! 2017年Google IO大会宣...

网友评论

      本文标题:kotlin(六):基本语法之返回跳转

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