Les exemples de cet article décrivent l'utilisation d'enum en Java. Partagez-le avec tout le monde pour votre référence. L’analyse spécifique est la suivante :
1. Utilisation de base
Copiez le code comme suit : enum Day {
DIMANCHE, LUNDI, MARDI, MERCREDI, JEUDI, VENDREDI, SAMEDI ;
}
Les énumérations sont des constantes, elles doivent donc être en lettres majuscules.
2. Les énumérations sont des objets
Une énumération hérite implicitement de java.lang.Enum, elle possède donc les propriétés et méthodes de java.lang.Enum. Parcourez l'énumération :
Copiez le code comme suit : public class Main {
public static void main (String[] arguments) {
pour(Jour jour:Jour.values()) {
System.out.println(jour);
}
}
}
3. Les énumérations peuvent avoir des champs et des méthodes . Les exemples suivants sont tirés des tutoriels officiels Java™.
Copiez le code comme suit : public enum EnumDemo {
AOBJECT("champ un", "champ deux");
champ de chaîne privé1 ;
champ de chaîne privé2 ;
EnumDemo(String val1, String val2){
this.field1 = val1;
this.field2 = val2;
}
public void printFields(){
System.out.println(this.field1);
System.out.println(this.field2);
}
public static void main (String[] arguments) {
EnumDemo.AOBJECT.printFields();
}
}
Les exemples concrets suivants proviennent du didacticiel Java officiel :
Copiez le code comme suit : public enum Planet {
MERCURE (3.303e+23, 2.4397e6),
VENUS (4.869e+24, 6.0518e6),
TERRE (5.976e+24, 6.37814e6),
MARS (6.421e+23, 3.3972e6),
JUPITER (1.9e+27, 7.1492e7),
SATURNE (5.688e+26, 6.0268e7),
URANUS (8,686e+25, 2,5559e7),
NEPTUNE (1,024e+26, 2,4746e7) ;
double masse finale privée // en kilogrammes
double rayon final privé // en mètres
Planète (double masse, double rayon) {
this.mass = masse ;
this.radius = rayon ;
}
privé double masse() { return masse }
privé double rayon() { rayon de retour }
// constante gravitationnelle universelle (m3 kg-1 s-2)
double G final statique public = 6,67300E-11 ;
double surfaceGravity() {
renvoyer G * masse / (rayon * rayon) ;
}
double surfaceWeight (double autre masse) {
return otherMass * surfaceGravity();
}
public static void main (String[] arguments) {
Double poids terrestre = 120 ;
pour (Planète p : Planète.values()){
System.out.println(p.surfaceGravity());
System.out.println(p.surfaceWeight(earthWeight/EARTH.surfaceGravity()));
}
}
}
4. Les énumérations sont des singletons et vous pouvez utiliser des énumérations pour créer un Singleton.
Copiez le code comme suit : public enum Singleton {
INSTANCE(nouvelle chaîne[]{"arg1", "arg2"});
String[] mesArgs ;
Singleton (String[] arguments){
this.myArgs = args;
}
public statique Singleton getInstance(){
retourner INSTANCE ;
}
public static void main (String[] arguments) {
pour (String arg : INSTANCE.myArgs)
System.out.println(arg);
}
}
J'espère que cet article sera utile à la programmation Java de chacun.