Kotlin学习(7):返回和跳转
来源:互联网 发布:中美洲际高铁 知乎 编辑:程序博客网 时间:2024/06/08 04:44
- 开发环境:IntelliJ IEDA
- 个人博客:http://blog.csdn.net/IInmy
- 项目源码:https://github.com/Rushro2m/LearnKotlin-master
Kotlin有三种结构化跳转表达式:
return
:默认从最直接包围它的函数或者匿名函数返回。break
:终止最直接包围它的循环。continue
:继续下一次最直接包围它的循环。
所有的这些表达式都可以用作更大表达式的一部分:
val s = Person("张三").name ?: return
1、Break与Continue标签
在Kotlin中任何表达式都可以用标签(label
)来标记。标签的格式为标识符后跟@
符号,例如:abc@
、fooBar@
都是有效的标签。要为一个表达式加标签,我们只要在其前加标签即可。
loop@ for (i in 1..100) { //... }
标签限制的break跳转到刚好位于该标签指定的循环后面的执行点。continue
继续标签指定的循环下一次迭代。
2、标签处返回
Kotlin有函数字面量、局部函数和对象表达式。因此Kotlin的函数可以被嵌套。标签限制的return
允许我们从外层函数返回。最终的一个用途就是i从Lambda表达式中返回。
fun foo() { val ints = listOf(0, 1, 2, 3, 4, 5, 6) ints.forEach { if (it == 3) //从Lambda函数中返回,结束这个循环函数 return print(it) }}
这个return
表达式从最直接包围它的函数即foo
中返回。如果我们需要从Lambda表达式中返回,我们必须给它加标签并用以限制return
。
fun fzz() { val ints = listOf(0, 1, 2, 3, 4, 5, 6) ints.forEach lit@ { if (it == 0) return@lit print(it) }}
通常情况下使用隐式标签更方便。改标签与该Lambda的函数同名。
fun fxx() { val ints = listOf(0, 1, 2, 3, 4, 5, 6) ints.forEach { if (it == 0) return@forEach print(it) }}
3、Continue
continue
指的是继续标签指定的循环的下一次迭代,也就是结束本次循环,开始下一次循环。
for (i in 1..10){ if (i==6)continue print(i) }
阅读全文
0 0
- Kotlin学习(7):返回和跳转
- Kotlin语法(五)-返回和跳转
- Kotlin-1.4-返回和跳转
- Kotlin 官方学习教程之返回和跳转
- Kotlin 从学习到 Android 第五章 返回和跳转
- Kotlin学习(六): 包、控制流、返回与跳转
- Kotlin 学习之返回与跳转
- Kotlin基础教程-返回值和跳转
- android kotlin基础(四)-返回和跳转
- 学习kotlin第六天_包、控制流、返回和跳转
- 【Kotlin从入门到深坑】之返回和跳转
- Kotlin-07.返回和跳转(return/break/continue)
- Kotlin学习笔记(二)循环,跳转
- Kotlin学习之跳转
- [kotlin](s1_3)包、控制流、返回与跳转
- Kotlin学习笔记——控制流和跳转
- Kotlin控制流、返回与跳转
- Kotlin学习之-4.3.4 返回和中止循环
- 解决Redhat BCM43142不能连接WIFI问题
- QuickSort
- 欢迎使用Markdown编辑器写博客(源文件)
- FAQ(21):org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'a4Pa
- C语言知识小结(五)
- Kotlin学习(7):返回和跳转
- 程序员面试宝典随笔记(一)-----TCPIP和socket编程面试技巧
- 15_张孝祥_多线程_Semaphere同步工具
- LaTeX编辑环境搭建-MikTeX+ATOM
- 20171218_工作记录
- 欢迎使用CSDN-markdown编辑器(生成文件)
- redis 键key
- 724. Find Pivot Index
- DDR2学习笔记(3)