Salut
J'ai une enum et je souhaiterais affecter une variable de ce type à partir d'une valeur int.
A part un switch je n'ai pas trouvé d'autre syntaxe. Il doit bien y avoir mieux ?!
Dans la doc il est interdit d'utiliser de constructeur public pour les enums.
Je trouve pas comment faire mieux que le contenu de la méthode void setProtocole( int protocoleVersion ).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 public static enum ProtocoleVersion { VERSION_ONE(1), VERSION_TWO(2); int _version ; ProtocoleVersion(int version) { _version = version ; } } private ProtocoleVersion _protocoleVersion ; public void setProtocole( int protocoleVersion ) { switch( protocoleVersion ) { case 1: _protocoleVersion = ProtocoleVersion.VERSION_ONE ; break ; case 2: _protocoleVersion = ProtocoleVersion.VERSION_TWO ; break ; default: throw new Exception("Invalid protocole version"); } }
Merci pour vos idées,
cyrille
Partager