¿Cómo regresa uno de un cierre maravilloso y detiene su ejecución?
Me gustaría regresar de un cierre, como lo haría si se usara una declaración de interrupción en un bucle.
Por ejemplo
largeListOfElements.each{ element->
if(element == specificElement){
// do some work
return // but this will only leave this iteration and start the next
}
}
En la declaración if anterior, me gustaría dejar de recorrer la lista y dejar el cierre para evitar iteraciones innecesarias.
He visto una solución en la que se lanza una excepción dentro del cierre y queda atrapada afuera, pero no me gusta demasiado esa solución.
¿Hay alguna solución para esto, aparte de cambiar el código para evitar este tipo de algoritmo?