Bonsoir,

quelqu'un peut-il m'expliquer comment faire pour utiliser un switch qui compare un int, a des valeur d'énumération ?
Exemple:

L'énumération:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public enum enumChamps {
  C1 ("Champ1"),
  C2 ("Champ2"), 
  C3 ("Champ3");
 
  /.../
}
Puis dans une méthode d'une classe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
public methodeX(int x) {
 
  switch (x) {
  case C1:
    Bla bla pour c1;
    break;
 
  case C2:
  /.../
L'idée est de savoir à quel élément d'énumération correspond 'x'.
Je ne sais pas comment récupérer le fait que C1 est le 1er élément de l'énumération, C2 le deuxième...

ordinal() me donne la position de chaque éléments de l'énumération. Mais lorsque je tente la syntaxe:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
case enumChamps.C1.ordinal():
on me répond que Les expressions de case doivent correspondre à des constantes.
Et je tourne en rond