Foros del Web » Programación para mayores de 30 ;) » Java »

¿ Lo contrario a Enum.ordinal() ?

Estas en el tema de ¿ Lo contrario a Enum.ordinal() ? en el foro de Java en Foros del Web. Hola nuevamente, señorías Aprendiendo sobre listas enum descubro que existe la propiedad miListaEnum.ordinal(miConstante) que devuelve el orden (según declaración en su fichero) que ocupa esa ...
  #1 (permalink)  
Antiguo 12/12/2015, 10:27
 
Fecha de Ingreso: octubre-2012
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 0
¿ Lo contrario a Enum.ordinal() ?

Hola nuevamente, señorías

Aprendiendo sobre listas enum descubro que existe la propiedad miListaEnum.ordinal(miConstante) que devuelve el orden (según declaración en su fichero) que ocupa esa constante.

Ahora bien, me sorprende que estoy leyendo, y no encuentro que exista la inversa, alguna propiedad a la que pasar un int, y que te devuelva la constante enum que ocupa esa posición.

¿No hay nada así?

Hasta el momento lo que yo hago para eos casos es pasar un int, con ese int hacer un switch, y según el casE que sea, ya hago lo debido, para facilitarle al usuario no tener que escribir como parámetro justo una de las palabra de la lista enum (y a mi el no tener que validar que sean esas palabras y solo esas las que me pase)

Me sorprende con la riqueza de Java, que no haya algo para darle un int y que te devuelva su enum, igual que lo hay para darle un enum y que te devuelva su int de posición.

¿Digo bien, o me estoy perdiendo algo? Muchas gracias.
  #2 (permalink)  
Antiguo 12/12/2015, 11:34
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: ¿ Lo contrario a Enum.ordinal() ?

Hola:

Sería así

Código Java:
Ver original
  1. ElEnumerado valor = ElEnumerado.values()[indice];

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 12/12/2015, 12:15
 
Fecha de Ingreso: octubre-2012
Mensajes: 38
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: ¿ Lo contrario a Enum.ordinal() ?

Gracias otra vez, hoy estás siendo mi mentor particular :)
Ten buen finde :)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:40.