Cómo nido java de mejora para los bucles

Para entender cómo nido mejorada para bucles, pensar de Java sobre una máquina tragaperras. Después de haber escrito algo de código simple para determinar el resultado, usted pregunta acerca de los problemas más complicados. " Puedo enumerar todas las posibles combinaciones de tres tambores de cuatro símbolos de la máquina tragaperras "? Sí puedes. Este código muestra cómo hacerlo.

ListCombinations importación estática de clase java.lang.System.out {enum Símbolo {cereza, limón, kumquat, colinabo} static void main (String args []) {públicaspara (Símbolo leftReel : Symbol.values ​​()) {para (Símbolo middleReel : Symbol.values ​​()) {para (Símbolo rightReel : Symbol.values ​​()) {out.print (leftReel) -out.print ("") -out.print (middleReel) -out.print ("") -out.println (rightReel) -}  }}}}

Cuando se ejecuta este programa, se obtiene 64 líneas de salida.

imagen0.jpg

Este programa contiene un bucle dentro de un bucle. De hecho, este código tiene un bucle dentro de un bucle dentro de un bucle. Aquí está la estrategia:

para (cada uno de los 4 símbolos que  puede aparecer en la bobina izquierda), para (cada uno de los 4 símbolos que puede aparecer en el carrete del medio),para (cada uno de los 4 símbolos que  puede aparecer en el carrete de la derecha),mostrar los símbolos de los tres carretes.

Así se inicia el bucle externo con el Cereza símbolo. Entonces ti, marcha al bucle central y comenzar ese lazo con el Cereza símbolo. Después, continuará con el bucle interno y elegir la Cereza (nunca mejor dicho). Por fin, con cada bucle sintonizado a la Cereza ajuste, se muestra el cherry cherry cherry combinación.

image1.jpg

Después de mostrar cherry cherry cherry, de continuar con otros valores del bucle más interior. Es decir, se cambia el valor de la bobina derecha desde Cereza a limón. Ahora los valores de los tres carretes 'son cherry cherry limón, por lo que mostrar estos valores en la pantalla.

image2.jpg

Después de agotar los cuatro valores del bucle más interno (carrete de derecha), saltar de ese bucle más interno. Pero el salto te pone de nuevo a la parte superior del bucle medio, donde se cambia el valor de middleReel de Cereza a limón. Ahora los valores de leftReel y middleReel son Cereza y limón, respectivamente.

image3.jpg

Después de haber cambiado a limón en el lazo medio, usted va disparaba de nuevo en el bucle más interior. Como si nunca hubieras visto este bucle interno antes, se establece la variable del bucle Cereza.

image4.jpg

Después de mostrar la sabrosa cereza limón cereza combinación, empezar a cambiar los valores de la bucle más interior.

image5.jpg

El bucle sigue adelante hasta que muestra los 64 combinaciones. ¡Menos mal.




» » » » Cómo nido java de mejora para los bucles