Comment obtenir une valeur enum à partir d'une chaîne en Java?
Bonjour à tous ! Je suis débutant en Java et j'ai rencontré un problème en travaillant avec les énumérations (enum). J'ai un enum qui décrit les statuts de commande :
```java
public enum OrderStatus {
NEW,
PROCESSING,
SHIPPED,
DELIVERED,
CANCELLED
}
```
Je reçois une chaîne de l'utilisateur via la console ou depuis une base de données, par exemple "PROCESSING" ou "processing". Je dois convertir cette chaîne en la valeur enum correspondante pour l'utiliser dans la logique de l'application.
Le problème est que je ne sais pas comment faire correctement. J'ai essayé d'assigner simplement la chaîne à une variable de type OrderStatus, mais le compilateur génère une erreur. J'ai entendu dire qu'il existe une méthode valueOf(), mais elle lève une exception si la chaîne ne correspond pas au nom de la constante. Et si la chaîne est écrite dans une casse différente ? Ou contient des espaces ? Comment traiter correctement ces cas ?
Dites-moi, s'il vous plaît, comment obtenir une valeur enum à partir d'une chaîne en Java de manière fiable et sécurisée ? De préférence avec des exemples de code.
Merci d'avance !
No answers yet.
Connectez-vous pour laisser une réponse