Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Énumérations Java

Énumérations Java

Dans ce tutoriel, nous allons découvrir les énumérations en Java. Nous apprendrons à créer et à utiliser des énumérations et des classes énumérées à l'aide d'exemples.

En Java, une énumération (abréviation d'énumération) est un type qui a un ensemble fixe de valeurs constantes. Nous utilisons le enum mot-clé pour déclarer des énumérations. Par exemple,

enum Size { 
   SMALL, MEDIUM, LARGE, EXTRALARGE 
}

Ici, nous avons créé une énumération nommée Taille . Il contient des valeurs fixes SMALL , MOYEN , GRAND , et EXTRALARGE .

Ces valeurs entre accolades sont appelées constantes enum (valeurs).

Remarque : Les constantes enum sont généralement représentées en majuscules.

Exemple 1 :Énumération Java

enum Size {
   SMALL, MEDIUM, LARGE, EXTRALARGE
}

class Main {
   public static void main(String[] args) {
      System.out.println(Size.SMALL);
      System.out.println(Size.MEDIUM);
   }
}

Sortie

SMALL
MEDIUM

Comme nous pouvons le voir dans l'exemple ci-dessus, nous utilisons le nom enum pour accéder aux valeurs constantes.

De plus, nous pouvons créer des variables de types enum. Par exemple,

Size pizzaSize;

Ici, pizzaSize est une variable de Taille taper. Il ne peut être attribué qu'à 4 valeurs.

pizzaSize = Size.SMALL;
pizzaSize = Size.MEDIUM;
pizzaSize = Size.LARGE;
pizzaSize = Size.EXTRALARGE;

Exemple 2 :Java Enum avec l'instruction switch

enum Size {
 SMALL, MEDIUM, LARGE, EXTRALARGE
}

class Test {
 Size pizzaSize;
 public Test(Size pizzaSize) {
   this.pizzaSize = pizzaSize;
 }
 public void orderPizza() {
   switch(pizzaSize) {
     case SMALL:
       System.out.println("I ordered a small size pizza.");
       break;
     case MEDIUM:
       System.out.println("I ordered a medium size pizza.");
       break;
     default:
       System.out.println("I don't know which one to order.");
       break;
   }
 }
}

class Main {
 public static void main(String[] args) {
   Test t1 = new Test(Size.MEDIUM);
   t1.orderPizza();
 }
}

Sortie

I ordered a medium size pizza.

Dans le programme ci-dessus, nous avons créé un type enum Taille . Nous avons ensuite déclaré une variable pizzaSize de la Taille saisir.

Ici, la variable pizzaSize ne peut être attribué qu'avec 4 valeurs (SMALL , MOYEN , GRAND , TRÈS GRAND ).

Remarquez la déclaration,

Test t1 = new Test(Size.MEDIUM);

Il appellera le Test() constructeur à l'intérieur du Test classer. Maintenant, la variable pizzaSize est attribué avec le MEDIUM constante.

En fonction de la valeur, l'un des cas de l'instruction switch case est exécuté.

Classe Enum en Java

En Java, les types enum sont considérés comme un type spécial de classe. Il a été introduit avec la sortie de Java 5.

Une classe enum peut inclure des méthodes et des champs comme les classes normales.

enum Size {
    constant1, constant2, …, constantN;

    // methods and fields	
}

Lorsque nous créons une classe enum, le compilateur crée des instances (objets) de chaque constante enum. De plus, toutes les constantes enum sont toujours public static final par défaut.

Exemple 3 :classe d'énumération Java

enum Size{
  SMALL, MEDIUM, LARGE, EXTRALARGE;

  public String getSize() {

    // this will refer to the object SMALL
    switch(this) {
      case SMALL:
        return "small";

      case MEDIUM:
        return "medium";

      case LARGE:
        return "large";

      case EXTRALARGE:
        return "extra large";

      default:
        return null;
      }
   }

  public static void main(String[] args) {

    // call getSize()
    // using the object SMALL
    System.out.println("The size of the pizza is " + Size.SMALL.getSize());
  }
}

Sortie

The size of the pizza is small

Dans l'exemple ci-dessus, nous avons créé une classe enum Size . Il a quatre constantes SMALL , MOYEN , GRAND et EXTRALARGE .

Depuis Taille est une classe enum, le compilateur crée automatiquement des instances pour chaque constante enum.

Ici à l'intérieur du main() méthode, nous avons utilisé l'instance SMALL appeler le getSize() méthode.

Remarque :Comme les classes normales, une classe enum peut également inclure des constructeurs. Pour en savoir plus, visitez le constructeur Java enum.

Méthodes de la classe Java Enum

Certaines méthodes prédéfinies dans les classes enum sont facilement utilisables.

1. Java Enum ordinal()

Le ordinal() renvoie la position d'une constante enum. Par exemple,

ordinal(SMALL) 
// returns 0

2. Énumération compareTo()

Le compareTo() La méthode compare les constantes enum en fonction de leur valeur ordinale. Par exemple,

Size.SMALL.compareTo(Size.MEDIUM)
 // returns ordinal(SMALL) - ordinal(MEDIUM)

3. Enum toString()

Le toString() La méthode renvoie la représentation sous forme de chaîne des constantes enum. Par exemple,

SMALL.toString()
// returns "SMALL"

4. Nom d'énumération()

Le name() La méthode renvoie le nom défini d'une constante enum sous forme de chaîne. La valeur renvoyée par le name() la méthode est final . Par exemple,

name(SMALL)
// returns "SMALL"

5. Java Enum valueOf()

Le valueOf() La méthode prend une chaîne et renvoie une constante enum ayant le même nom de chaîne. Par exemple,

Size.valueOf("SMALL")
// returns constant SMALL.

6. Valeurs d'énumération()

Le values() renvoie un tableau de type enum contenant toutes les constantes enum. Par exemple,

Size[] enumArray = Size.value();

Pourquoi les énumérations Java ?

En Java, enum a été introduit pour remplacer l'utilisation des constantes int .

Supposons que nous ayons utilisé une collection de int constantes.

class Size {
   public final static int SMALL = 1;
   public final static int MEDIUM = 2;
   public final static int LARGE = 3;
   public final static int EXTRALARGE = 4;
}

Ici, le problème se pose si nous imprimons les constantes. C'est parce que seul le numéro est imprimé, ce qui peut ne pas être utile.

Ainsi, au lieu d'utiliser des constantes int, nous pouvons simplement utiliser des énumérations. Par exemple,

enum Size {
   SMALL, MEDIUM, LARGE, EXTRALARGE
}

Cela rend notre code plus intuitif.

De plus, enum fournit une sécurité de type au moment de la compilation .

Si nous déclarons une variable de Taille taper. Par exemple,

Size size;

Ici, il est garanti que la variable contiendra l'une des quatre valeurs. Maintenant, si nous essayons de passer des valeurs autres que ces quatre valeurs, le compilateur générera une erreur.


Java

  1. C enums
  2. Opérateurs Java
  3. Commentaires Java
  4. Java pour chaque boucle
  5. Chaînes Java
  6. InterfaceJava
  7. Classe anonyme Java
  8. Énumérations Java
  9. Constructeur d'énumération Java