Cada oración de este artículo es reflexiva. Espero que los viejos definitivamente ganen algo al leerlo con cuidado y practicarlo.
Resumen: Este artículo analiza principalmente el uso de clases de enumeración en el entorno de producción. Primero, presentaremos el tema que discutimos al presentar brevemente el concepto de clase de enumeración; Luego iremos directamente a la parte de combate real. Este artículo solo introducirá las situaciones que se usan con más frecuencia en el combate real y se usan comúnmente, por lo que espero que Lao Tie pueda experimentarlo y practicarlo con cuidado y finalmente convertirlo en el suyo; Finalmente, daremos una breve introducción a la API de enumeración. El resto del contenido que no se ha introducido básicamente rara vez se usa en nuestro entorno de producción. Si está interesado, puede realizar una investigación en profundidad usted mismo.
enumerar
Concepto: el tipo de enumeración es parte de la nueva característica en Java 5. Es un tipo de datos especial. Su característica es que nuestro código es más conciso y seguro. Hasta cierto punto, nos permite comprender la lógica comercial más claramente desde una perspectiva global (por ejemplo, después de que el estado de un orden se define como una clase de enumeración, no necesitamos observar el código de lógica comercial, solo necesitamos comprender todo el estado de nuestro pedido de esta clase de enumeración, lo que nos da una impresión global en nuestra mente, que es más conduzca el código posterior para la clasificación del código posterior).
Definición: Primero, use enum para definir una clase enum; entonces cada valor de enumación (es decir, el enum declarado) está separado por comas. Si hay código de operación después del valor enum, agregue un punto y coma al último valor de enum; Finalmente, recuerde que cada valor declarado en la clase Enum es una instancia, es decir, hay n valores de enum, y el constructor se llama n veces para crear instancias n enum. Aquí hay un pequeño ejemplo:
Enum Temporada de temporada {Primavera, verano, otoño, invierno; SmesionType () {System.out.println ("Mira cuántas veces se ha llamado a este constructor"); }} Temporada de clase pública {public static void main (string [] args) {System.out.println (smesiontype.spring); }}Salida de la consola:
Mire cuántas veces se ha llamado este constructor. Vea cuántas veces se ha llamado este constructor. Vea cuántas veces se ha llamado este constructor. Vea cuántas veces se ha llamado este constructor
Resumen: a partir de aquí, podemos ver que cada valor de Enum declarado en la clase enum en realidad llama al constructor y crea una instancia. La comprensión simple es: cada valor de enumación es un objeto de instancia.
Sin participación en el combate real
(1) Defina una clase de enumeración sin parámetros
Enum Temporada Type {Primavera, verano, otoño, invierno}(2) Use en la práctica
// Seleccione el siguiente uso de acuerdo con la situación real Temporada de springType = smesiontype.spring; // Salida Spring String SpringString = sazoneType.spring.ToString (); // Spring de salida
Hay dos aspectos prácticos
(1) Defina una clase de enumeración con solo un parámetro
Enum smesoneType {// pase los parámetros a través del constructor y cree instancias primavera ("primavera"), verano ("verano"), otoño ("otoño"), invierno ("invierno"); // Defina los parámetros correspondientes a la instancia de msg de cadena privada; // requerido: cree una instancia para el valor enum a través de este constructor sempenticionyPe (string msg) {this.msg = msg; } // Este método puede obtener el valor del parámetro de la instancia correspondiente de cadena pública getMsg () {return msg; }}(2) Use en la práctica
// Cuando asignamos valores a una clase de instancia, podemos usar el siguiente método cadena msg = sazoneType.spring.getMsg (); // Spring de salida
Tres medidas prácticas
(1) Defina una clase de enumeración con dos parámetros
Public Enum Season {// pase los parámetros a través del constructor y cree instancias primavera (1, "primavera"), verano (2, "verano"), otoño (3, "otoño"), invierno (4, "invierno"); // Defina los parámetros correspondientes a la tecla Integer privada de instancia; msg de cadena privada; // debe escribir: crear una instancia del valor enum a través de esta temporada de constructor (clave entera, string msg) {this.key = key; this.msg = msg; } // En muchos casos, el valor que podemos obtener desde la parte delantera es la clave de la clase enum, y luego puede obtener el valor de la temporada estática pública de enum correspondiente de Key (Key Integer) {para (temporada de temporada: temporada.Values ()) {if (temporada.key.equals (clave)) {Temporada de retorno; }} tirar nueva ilegalArgumentException ("sin coincidencias de elementos" + tecla); } // Este método puede obtener el valor clave de la instancia correspondiente pública Integer getKey () {Key de retorno; } // Este método puede obtener el valor de MSG de la instancia correspondiente de cadena publicitaria getMsg () {return msg; }}(2) Use en la práctica
// Exportar clave a 1 temporada de temporada = sazone.valueOfKey (1); // La clave de KeyInger de salida correspondiente a la instancia de primavera = sazone.spring.getkey (); // Salida de msgString correspondiente a la instancia de primavera msg = sazone.spring.getmsg ();
Resumen de la clase de enumeración
De hecho, después de que la clase de enumeración comprende su concepto, la enumeración se vuelve bastante simple. Puedes escribir una clase de enumeración a voluntad. Entonces, en cuanto a los ejemplos prácticos anteriores, primero debe descubrir el concepto, y luego practicarlo varias veces y estará bien. Elaboraré el concepto importante aquí para ayudar a las personas mayores a dominar rápidamente este conocimiento. En primer lugar, recuerde que los valores de Enum en la clase de enumeración no pueden tener parámetros o múltiples parámetros, y cada valor de enumeración es una instancia; Y otro punto importante es que si el valor de enumeración tiene n parámetros, entonces debe haber n valores de parámetros en el constructor, porque cada valor de enumeración declarado llamará al constructor para crear una instancia, por lo que los parámetros deben ser uno a uno. Como entendemos esto, solo necesitamos definir estos N parámetros de N como variables de miembros de N en la clase de enumeración, y luego proporcionar el método get () correspondiente, y luego puede obtener cualquier valor de parámetro en la instancia a voluntad a través de la instancia. Si desea que la clase de enumeración sea más útil, puede imitar mi método de escritura en práctica 3. A través de un cierto valor de parámetro, como el valor de parámetro clave, puede obtener el valor de enumeración correspondiente y luego obtener el valor que desee.
API de enumeración
Las clases de Enum que definimos con Enum heredan la clase Java.lang.enum, y luego heredarán su API. Las API de uso común son las siguientes:
Nombre de cadena ()
Obtenga el nombre de enum
int orgánico ()
Obtenga la posición del enum (subíndice, el valor inicial es 0)
ValueOf (string msg)
Obtenga su tipo de enumeración correspondiente a través de MSG. (Por ejemplo, se puede usar la clase de enumeración u otras clases de enumeración en la batalla práctica 2, siempre que se usen correctamente, puede usar este método)
valores()
Obtenga todos los valores de Enum en la clase de enumeración (por ejemplo, se usó en el combate real 3)
Resumir
Lo anterior es todo el contenido de este artículo sobre el código real compartiendo la enumeración de programación Java, espero que sea útil para todos. Los amigos interesados pueden continuar referiéndose a otros temas relacionados en este sitio. Si hay alguna deficiencia, deje un mensaje para señalarlo. ¡Gracias amigos por su apoyo para este sitio!