How do I do a “break” or “continue” when in a functional loop within Kotlin?

后端 未结 4 1921
长发绾君心
长发绾君心 2020-12-04 16:09

In Kotlin, I cannot do a break or continue within a function loop and my lambda -- like I can from a normal for loop. For example, th

4条回答
  •  感情败类
    2020-12-04 17:11

    forEach with break can be specificly substituted with any function:

    (1..20).any { x ->
        (x == 5).apply { // break on true
            if (!this) {
                results2.add(x)
            }
        }
    }
    

    Or possibly even shorter:

    (1..20).any { x ->
        results2.add(x)
        x == 4 // break on true
    }
    

提交回复
热议问题