En Scala, usamos una declaración de interrupción para interrumpir la ejecución del bucle en el programa. El lenguaje de programación Scala no contiene ningún concepto de instrucción de interrupción (en versiones anteriores a la 2.8), en lugar de instrucción de interrupción, proporciona un break
método que se utiliza para interrumpir la ejecución de un programa o un bucle. El método de interrupción se utiliza al importar scala.util.control.breaks._ package
.
Diagrama de flujo:
Sintaxis:
// import package import scala.util.control._ // create a Breaks object val loop = new breaks; // loop inside breakable loop.breakable{ // Loop starts for(..) { // code loop.break } }
o
import scala.util.control.Breaks._ breakable { for(..) { code.. break } }
Por ejemplo:
// Scala program to illustrate the // implementation of break // Importing break package import scala.util.control.Breaks._ object MainObject { // Main method def main(args: Array[String]) { // Here, breakable is used to prevent exception breakable { for (a <- 1 to 10) { if (a == 6) // terminate the loop when // the value of a is equal to 6 break else println(a); } } } }
Producción:
1 2 3 4 5
Interrupción en bucle anidado: también podemos usar el método de interrupción en bucle anidado.
Por ejemplo:
// Scala program to illustrate the // implementation of break in nested loop // Importing break package import scala.util.control._ object Test { // Main method def main(args: Array[String]) { var num1 = 0; var num2 = 0; val x = List(5, 10, 15); val y = List(20, 25, 30); val outloop = new Breaks; val inloop = new Breaks; // Here, breakable is used to // prevent from exception outloop.breakable { for (num1 <- x) { // print list x println(" " + num1); inloop.breakable { for (num2 <- y) { //print list y println(" " + num2); if (num2 == 25) { // inloop is break when // num2 is equal to 25 inloop.break; } } // Here, inloop breakable } } // Here, outloop breakable } } }
Producción:
5 20 25 10 20 25 15 20 25
Explicación: En el ejemplo anterior, el valor inicial de num1 y num2 es 0. Ahora, primero el bucle for externo comienza e imprime 5 de la lista x, luego el bucle for interno comienza a funcionar e imprime 20, 25 de la lista y, cuando los controles van a la condición num2 == 25, entonces el bucle interno se rompe. Del mismo modo para 10 y 15.
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA