Kotlin: return vs return@foreach
override fun onSuccess(
results: Text,
graphicOverlay: GraphicOverlay,
rect: Rect
) {
graphicOverlay.clear()
results.textBlocks.forEach {
if (it.text.isBlank()) {
return@forEach
}
val textGraphic = TextRecognitionGraphic(graphicOverlay, it, rect)
graphicOverlay.add(textGraphic)
}
graphicOverlay.postInvalidate()
}
return vs return@foreach
這裡的return 其實是函數的return 函數如果return 了,那麼return 下面的都不會執行.
return@forEach 表示是是否終止這次lambda 的進行執行,for 循環還會繼續,這種寫法和continue 的效果是一致的
留言
張貼留言