Enum java de type string
Résolu/Fermé
Flog78
Messages postés
16
Date d'inscription
mercredi 28 novembre 2012
Statut
Membre
Dernière intervention
17 mai 2013
-
Modifié par Flog78 le 28/11/2012 à 11:34
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 28 nov. 2012 à 14:11
KX Messages postés 16755 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 12 février 2025 - 28 nov. 2012 à 14:11
Bonjour,
Voila je voudrai déclarer une variable de type String, qui ne puisse prendre des valeurs que parmi une liste de String que j'aurais défini, de la même facon que les énumeré dans les base de donnée.
Par exemple je déclare une variable mobilier de type String, qui ne peut prendre que les valeurs "table", "chaise" et "bureau".
Le but est que si dans mon code je fait
mobilier = "chaise"; le compilo ne dit rien et que si je fait
mobilier = "armoire"; le compilo dit que c'est impossible.
Merci d'avance.
Voila je voudrai déclarer une variable de type String, qui ne puisse prendre des valeurs que parmi une liste de String que j'aurais défini, de la même facon que les énumeré dans les base de donnée.
Par exemple je déclare une variable mobilier de type String, qui ne peut prendre que les valeurs "table", "chaise" et "bureau".
Le but est que si dans mon code je fait
mobilier = "chaise"; le compilo ne dit rien et que si je fait
mobilier = "armoire"; le compilo dit que c'est impossible.
Merci d'avance.
A voir également:
- Enum java de type string
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java décompiler - Télécharger - Langages
2 réponses
KX
Messages postés
16755
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 février 2025
3 020
28 nov. 2012 à 14:03
28 nov. 2012 à 14:03
Les enum sont une bonne idée, d'autant qu'en Java ce sont des classes puissantes auquel on peut rajouter des champs, constructeurs et méthodes, pour les manipuler comme on veut :
Déclaration simple :
Déclaration riche :
Remarque : s'il s'agit juste de modifier le toString pour mettre le nom de l'enum en minuscules, le champs str est inutile et on pourrait faire directement comme ça :
Déclaration simple :
enum Mobilier { TABLE, CHAISE, BUREAU } public class Test { public static void main(String[] args) { Mobilier mobilier = Mobilier.CHAISE; System.out.println(mobilier); // "CHAISE" } }
Déclaration riche :
enum Mobilier { // Les objets énumérés sont forcément au début de la déclaration // Ils doivent faire appel à un des constructeurs définis TABLE("table"), CHAISE("chaise"), BUREAU("bureau"); private String str; // Les constructeurs ne peuvent pas être protected ou public private Mobilier(String val) { str = val; } public String toString() { return str; } } public class Test { public static void main(String[] args) { Mobilier mobilier = Mobilier.CHAISE; System.out.println(mobilier); // "chaise" } }
Remarque : s'il s'agit juste de modifier le toString pour mettre le nom de l'enum en minuscules, le champs str est inutile et on pourrait faire directement comme ça :
enum Mobilier { TABLE, CHAISE, BUREAU; public String toString() { return super.toString().toLowerCase(); } } public class Test { public static void main(String[] args) { Mobilier mobilier = Mobilier.CHAISE; System.out.println(mobilier); // "chaise" } }
Heliotte
Messages postés
1491
Date d'inscription
vendredi 26 octobre 2012
Statut
Membre
Dernière intervention
28 janvier 2013
92
Modifié par Heliotte le 28/11/2012 à 11:44
Modifié par Heliotte le 28/11/2012 à 11:44
Bonjour Flog78,
WikiBooks ou sur JAVA, toute la documentation nécessaire tu trouveras concernant ENUM
enum BotFicelle{ CORDE, FIL, SERPENTIN };
WikiBooks ou sur JAVA, toute la documentation nécessaire tu trouveras concernant ENUM
enum BotFicelle{ CORDE, FIL, SERPENTIN };
28 nov. 2012 à 14:06
28 nov. 2012 à 14:11