一、数组的forEach中直接retrun

fun main(args: Array<String>) {val arr = intArrayOf(1,2,3,4,5,6,7)arr.forEach { if (it == 4) returnprintln("value:$it") }println("this is End")
}

那么输出结果是

可以看到程序程序在遍历到4的时候就退出了方法,而且this is End也没有打印,我若果只想在数组遍历到4的时候跳出forEach,forEeach后面的语句还继续执行,实现类似java中的continue,那么应该怎么做呢?

二、实现类似java中的continue

fun main(args: Array<String>) {val arr = intArrayOf(1,2,3,4,5,6,7)arr.forEach continuing@{if (it == 4) return@continuingprintln("value:$it")}println("this is End")}

运行结果: 可以看到在遍历到4的时候直接跳出了此次循环,假设当遍历到4的时候,想要直接跳出遍历循环,实现类似java中的break的作用,那么应该怎么做呢?

三、实现类似java中的break

fun main(args: Array<String>) {val arr = intArrayOf(1,2,3,4,5,6,7)run breaking@{arr.forEach continuing@{if (it == 4) return@breakingprintln("value:$it")}}println("this is End")}

运行结果:

可以看到的是在数据遍历到4的时候,直接就跳出了循环体,继续运行下面的代码,实现了在kotlin的forEach中类似java的break的效果。

Kotlin在forEach中如何跳出循环和跳出当前循环体相关推荐

  1. Kotlin forEach中实现break

    Kotlin 线上编写练习 Kotlin官网提供了 PlayGround 供大家线上尝试 地址:https://play.kotlinlang.org/ 文章目录 前言 解决方式 遇到得问题 结语 参 ...

  2. js中for循环如何跳出,跳过

    for循环中,break可跳出循环.continue跳过本次循环,执行下一次循环 . forEach中,只能用return跳过本次循环,执行下一次.作用跟for循环的continue一样. let a ...

  3. 【Kotlin】Kotlin 语言集合中的高阶函数详解 ( 数据类 data class | maxBy | minBy | filter | map | any | count | find )

    文章目录 I . List 集合高阶函数引入 II . Kotlin 数据类 ( data class ) III . Java 代码 与 Kotlin 代码实现对比 ( 查询年龄最大的 ) IV . ...

  4. kotlin能用嵌入式linux,Kotlin在项目中的应用和踩过的坑

    应用 空类型安全 Kotlin引入了可空类型(用?标识),在编译期杜绝了可空类型直接调用方法的可能. var a: String = "abc" a = null // 编译错误 ...

  5. java中常见跳出循环的方式总结

    java中常见跳出循环的方式一般有两种,一种是常用的break,continue,return方式:另一种是循环标记的方式. 方式一:break,continue,return方式 案例: break ...

  6. forEach方法如何跳出循环

    1.for方法跳出循环------break跳出循环 continue跳过当次循环 var arr = [1,3,5,7,9]; var id = 5; for (var i = 0; i < ...

  7. 在kotlin companion object中读取Bean,注入Bean对象

    在kotlin companion object中读取Bean,注入Bean对象 在使用kotlin时,或多或少地会使用到一些公共组件,如 http. mongo. redis相关的组件.   使用组 ...

  8. 在kotlin companion object中读取spring boot配置文件,静态类使用@Value注解配置

    在kotlin companion object中读取配置文件 静态类使用@Value注解配置 class Config {@Value("\${name}")fun setNam ...

  9. C# - 在foreach中删除元素

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在for ...

最新文章

  1. Windows Azure Storage (25) Azure Append Blob
  2. insert时调用本身字段_「技术篇」ETL工具Kettle数据对比同步以及Java程序中调用
  3. Java文件路径(getResource)
  4. 线程不能被子进程继承
  5. 新的一年babel了解一下
  6. 计算机控制系统的试题,计算机控制系统练习题(1)
  7. 全球大学文凭“含金量”排名出炉:“北清复”名列30强
  8. 32 岁大佬阿里二面,他答 JVM 题的姿势,令面试官很想不通。。。
  9. 2008R2更新链接服务器(SQL2000)慢的问题
  10. 人生---新---起点……
  11. element UI实现动态生成多级表头
  12. Windows10+Caffe+CUDA7.5+VS2013环境配置
  13. Glide用法总结--缓存与下载方法
  14. 芯片测试需要掌握什么软件,芯片测试工程师岗位职责
  15. 计算智能的极限、与人的关系及发展方向探讨
  16. 推荐一款博客备份工具!
  17. Unity UGUI 代码改变遮挡层级
  18. Office Visio Project 2016下载地址
  19. GDOI 2016 总结
  20. 两个向量组的秩相等说明什么_若两个向量组等价,它们的秩是否相等?

热门文章

  1. BCM4330 WIFI 调试记录
  2. 使用Fiddler将响应数据保存到指定文件
  3. MyBatis官方文档-XML 映射文件
  4. linux识别require语法,Scala 的参数检查与断言: require, assert, assume 和 ensuring
  5. 基于开源网易云API+Flutter写的一款音乐播放器
  6. 滴滴出行2017校园春招内推面试(一)
  7. 【Unity】游戏寻路系统—NavMesh入门(个人翻译)
  8. lum使用cgi处理PHP,php-cgi进程占用cpu资源过多负载高的原因分析及解决步骤
  9. 微服务日志配置以及在生产环境怎么查看日志?
  10. ISO 11898,14229,15765,UDS的区别?