Comment créer une boucle for améliorée en java

Pour comprendre comment utiliser Java améliorée de pour déclaration, examiner comment les lois du travail de probabilité. Votre chance de gagner l'un des jackpots de loterie populaires aux États-Unis est d'environ 1 sur 135.000.000.

Si vous vendez votre maison en quart de millions de dollars et d'utiliser tout l'argent pour acheter des billets de loterie, vos chances de gagner est encore seulement 1 sur 540. Si vous jouez tous les jours du mois (vente d'une maison chaque jour), vos chances de gagner le jackpot est toujours inférieure à 1 sur 15.

Pour illustrer l'idée de l'renforcée pour déclaration, vous verrez quatre symboles - un cerisier, un citron, un kumquat, et un rutabaga.

Lorsque vous jouez cette machine à sous simplifié, vous pouvez faire tourner l'une des plus de 60 combinaisons - cerise cerise + + kumquat, rutabaga + rutabaga + rutabaga, ou autre chose. Le but ici est de lister toutes les combinaisons possibles. Mais d'abord, nous allons jeter un oeil à un autre type de boucle. Ce code définit une ENUM tapez pour les symboles d'une machine à sous et affiche une liste des symboles.

ListSymbols importation statique java.lang.System.out classe {Symbole d'énumération {cerise, citron, kumquat, rutabaga} static void main (String args []) {publics pour (Symbole leftReel: Symbol.values ​​()) {out.println (leftReel) - }}}

Ce code utilise Java de pour boucle renforcée. Le mot “ amélioré ” moyens “ en-diée par rapport aux boucles dans les versions antérieures de Java ”. Le renforcée pour boucle a été introduit dans la version 5.0 de Java. Si vous exécutez la version Java 1.4.2 (ou quelque chose comme ça), vous ne pouvez pas utiliser un améliorée pour boucle.




Voici le format de la renforcée pour boucle:

pour (TypeName variableName : RangeOfValues) {Déclarations}

Voici comment la boucle suit le format:

  • Le mot symbole est le nom d'un type.

    La int Type décrit comme valeurs -1, 0, 1 et 2. Le booléen Type décrit les valeurs vrai et faux. Et le symbole Type décrit les valeurs cerise, citron, kumquat, et rutabaga.

  • Le mot leftReel est le nom d'une variable.

    La boucle dans le Listing 15-1 définit compter être un int variable. De même, la boucle dans le Listing 15-5 définit leftReel être un symbole variable. Donc, en théorie, la variable leftReel peut prendre l'une des quatre symbole des valeurs.

  • L'expression (Symbol.values) Supports pour les quatre valeurs dans le code.

    Pour me citer dans le point précédent, “ en théorie, la variable leftReel peut prendre l'une des quatre symbole valeurs ”. Eh bien, la RangeOfValues partie de la pour déclaration transforme la théorie en pratique. Ce troisième point à l'intérieur du dit entre parenthèses, “ Avoir autant d'itérations de la boucle car il ya symbole valeurs, et ont le leftReel prise variable sur une autre symbole valeur au cours de chacune des itérations de la boucle N ° 148.

    Ainsi la boucle subit quatre itérations - une itération dans laquelle leftReel a de la valeur cerise, une autre itération dans laquelle leftReel a de la valeur citron, une troisième itération dans laquelle leftReel a de la valeur kumquat, et une quatrième itération dans laquelle leftReel a de la valeur rutabaga. Au cours de chaque itération, le programme imprime le leftReel la valeur de la variable.

    image0.jpg

En général, un someEnumTypeName.(valeurs) expression signifie l'ensemble des valeurs qu'un particulier ENUM la variable de type peut avoir. Par exemple, vous pouvez utiliser l'expression (WhoWins.values) se référer à la domicile, visiteur, et ni des valeurs.

La différence entre le nom d'un type (comme symbole) Et les valeurs de l'Type (comme dans (Symbol.values)) Est vraiment subtile. Heureusement, vous ne devez pas vous inquiéter à propos de la différence. En tant que programmeur débutant, vous pouvez simplement utiliser la .(valeurs) suffixe dans une boucle renforcée de RangeOfValues partie.


» » » » Comment créer une boucle for améliorée en java