文章目录 Kotlin 退出循环总结 for循环 forEach() 嵌套for循环 lambda函数 inline函数
Kotlin 退出循环总结
for循环
for ( ( index, value) in list. withIndex ( ) ) { if ( value == "c" ) { break } println ( " $ index - $ value " )
}
forEach()
list. forEach { if ( it == "c" ) { return @forEach } println ( it)
}
run loop@ { list. forEach { if ( it == "c" ) { return @loop } println ( it) }
}
list. takeWhile { it != "c" } . forEach { println ( it) }
嵌套for循环
for ( i in 0 .. 5 ) { for ( j in 10 .. 15 ) { if ( j == 12 ) { break } println ( " $ i - $ j " ) }
}
outer@ for ( i in 0 .. 5 ) { for ( j in 10 .. 15 ) { if ( j == 12 ) { break @outer } println ( " $ i - $ j " ) }
}
lambda函数
fun myFun ( block: ( ) -> Unit) { block ( ) println ( "lambda函数结束" )
} fun main ( ) { println ( "开始" ) myFun { for ( i in 1 .. 5 ) { if ( i == 3 ) { return @myFun } println ( i) } } println ( "结束" )
}
inline函数
inline fun myInlineFun ( block: ( ) -> Unit) { block ( ) println ( "inline函数结束" )
} fun main ( ) { println ( "开始" ) myInlineFun { for ( i in 1 .. 3 ) { if ( i == 2 ) { return } println ( i) } } println ( "结束" )
}
fun main ( ) { println ( "开始" ) myInlineFun { for ( i in 1 .. 3 ) { if ( i == 2 ) { return @myInlineFun } println ( i) } } println ( "结束" )
}