0
点赞
收藏
分享

微信扫一扫

Kotlin在forEach中如何跳出循环和跳出当前循环体

全栈学习笔记 2022-03-13 阅读 120

一、数组的forEach中直接retrun

fun main(args: Array<String>) {
    val arr = intArrayOf(1,2,3,4,5,6,7)
    arr.forEach { 
        if (it == 4) return
        println("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@continuing
        println("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@breaking
            println("value:$it")
        }
        
    }

    println("this is End")

}

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

举报

相关推荐

0 条评论