Cómo obtener un valor enum desde un string en Java?
¡Hola a todos! Soy nuevo en Java y me encontré con un problema al trabajar con enumeraciones (enum). Tengo un enum que describe los estados de un pedido:
```java
public enum OrderStatus {
NEW,
PROCESSING,
SHIPPED,
DELIVERED,
CANCELLED
}
```
Recibo un string del usuario a través de la consola o de una base de datos, por ejemplo "PROCESSING" o "processing". Necesito convertir este string en el valor enum correspondiente para usarlo en la lógica de la aplicación.
El problema es que no sé cómo hacerlo correctamente. Intenté simplemente asignar el string a una variable de tipo OrderStatus, pero el compilador arroja un error. He oído que existe el método valueOf(), pero lanza una excepción si el string no coincide con el nombre de la constante. ¿Y qué pasa si el string está escrito en otro caso? ¿O contiene espacios? ¿Cómo manejar estos casos correctamente?
Por favor, indíquenme cómo obtener un valor enum desde un string en Java de manera confiable y segura. Preferiblemente con ejemplos de código.
Gracias de antemano.
No answers yet.
Inicia sesión para dejar una respuesta