Cómo utilizar un tipo de enumeración en java
La vida está llena de pequeños conjuntos de posibilidades, y Java tiene una característica que puede ayudarle a lidiar con estas posibilidades. La característica de Java se llama enumeración tipo. Está disponible desde la versión 5.0 de Java y hacia adelante.
Considere que podría ganar un partido de béisbol.
java.util.Scanner importación e importación Marcador de clase estática {java.lang.System.outWhoWins enum {hogar, visitante, ni}void Main (args String []) {public static Teclado escáner = nuevo escáner (System.in) -INT hankees, calcetines- WhoWins que-out.print ("Hankees y calcetines puntajes? ") = -hankees keyboard.nextInt () - calcetines = keyboard.nextInt () - out.println () - if (hankees gt; calcetines) { quien = WhoWins.home-out.println ("Los Hankees ganar :-)") -} else if (calcetines gt; hankees) { quien = WhoWins.visitor-out.println ("Los calcetines ganar :-(") -} else quien = WhoWins.neither-out.println ("Es un empate: -out.println () - out.println ("El juego de hoy es traído a usted por") -out.println ("SnitSoft, el software número uno") -out.println ("proveedor en el área de Hankeeville.") -out.println ("SnitSoft se presenta con orgullo en") -out.println ("Capítulo 6. Y recuerda, cuatro") -out.println ("de cinco médicos recomiendan") -out.println ("SnitSoft a sus pacientes.") -out.println () - si (== que WhoWins.home) {Out.println ("Nos superar `em bueno. ¿no es verdad?") -}si (== que WhoWins.visitor) {Out.println ("El árbitro hizo una injusta") -out.println ("llamada.") -} si (== que WhoWins.neither) {Out.println ("El juego va a tiempo extra.") - keyboard.close} () -}}
Esto es lo que sucede:
Se crea una variable para almacenar valores de tipoQuién gana.
Al igual que la línea
doble cantidad-
declara cantidad Almacenar doble valores (valores como 5,95 y 30,95), la línea
WhoWins que-
declara quien Almacenar Quién gana valores (valores como casa, visitante, y ninguno).
Se asigna un valor a la quienvariable.
Video: Tutorial Java en Español - Capitulo 64 - Tipos Enumerados
Se ejecuta una de las
OMS = WhoWins.alguna cosa-
instrucciones de asignación. El comando que se ejecuta depende del resultado de la Si la declaración de hankees gt; calcetines comparación.
quien casa- = // Esta asignación no funciona!
el compilador le da una casa no se puede resolver a una variable mensaje de error. Eso es sólo la forma enumeración tipos de trabajo.
Se trata de comparar el valor de la variable con cada una de lasQuién ganavalores.
En uno Si declaración, se comprueba la == que WhoWins.home condición. En los dos restantes Si declaraciones, devolver a la salida para el otro Quién gana valores.
Cerca del final, que podría haber hecho sin enumeración valores. Que podría haber probado cosas como hankees gt; calcetines por segunda vez.
Si (hankees gt; calcetines) {Out.println ("Los Hankees ganar :-)") -} // Y más tarde en el programa ... si (hankees gt; calcetines) {Out.println ("Nos superar `em bueno. ¿no es verdad?") -}
Pero esa táctica sería torpe. En un programa más complicado, que puede terminar la comprobación hankees gt; calcetines una docena de veces. Sería como hacer la misma pregunta una y otra vez.
En lugar de comprobar repetidamente la hankees gt; calcetines condición, almacenar el resultado del juego como un valor de enumeración. A continuación, se comprueba el valor de enumeración tantas veces como desee. Esa es una forma muy ordenada para resolver el problema de la comprobación repetida.