Kotlin Academy · Leçon

Définir des énumérations

Ensembles de constantes nommées

Leçon 1 sur 413 étapes

Définir des énumérations est une leçon Kotlin Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Kotlin Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Kotlin Academy comprend 4 leçons au total.

Qu’est-ce qu’une énumération ?

Une classe d’énumération définit un ensemble fixe de constantes nommées. Utilisez-la lorsqu’une valeur ne peut être qu’une option parmi un petit groupe connu.

  • Chaque constante est une instance du type d’énumération.
  • Le compilateur garantit qu’aucune autre valeur n’est possible.
enum class Direction {
    NORTH, SOUTH, EAST, WEST
}

fun main() {
    val d = Direction.NORTH
    println(d)
}

Pourquoi ne pas utiliser simplement des chaînes ?

Les chaînes autorisent les fautes de frappe et les valeurs non valides. Une énumération rend les états non valides impossibles : le compilateur rejette toute valeur qui ne fait pas partie de l’ensemble déclaré.

enum class Status { ACTIVE, INACTIVE }

fun main() {
    val s: Status = Status.ACTIVE
    println("Current: $s")
}

Déclarer les constantes

Les constantes sont placées entre les accolades et séparées par des virgules. Par convention, elles s’écrivent en UPPER_SNAKE_CASE.

enum class Size {
    SMALL, MEDIUM, LARGE, EXTRA_LARGE
}

fun main() {
    println(Size.EXTRA_LARGE)
}

Chaque constante est un objet

Chaque constante d’énumération est une instance singleton du type d’énumération. Vous y faites toujours référence via le nom de l’énumération, par exemple Color.RED.

enum class Color { RED, GREEN, BLUE }

fun main() {
    val c = Color.GREEN
    println(c == Color.GREEN)
}

Comparer les valeurs d’une énumération

Les constantes d’énumération peuvent être comparées avec ==. Comme chacune est un singleton, l’égalité et l’identité de référence coïncident.

enum class Light { RED, YELLOW, GREEN }

fun main() {
    val signal = Light.RED
    if (signal == Light.RED) println("Stop")
}

Lire la propriété name

Chaque constante expose une propriété intégrée name : la chaîne correspondant exactement à sa déclaration.

enum class Planet { MERCURY, VENUS, EARTH }

fun main() {
    val p = Planet.EARTH
    println(p.name)
}

valueOf à partir d’une chaîne

La fonction générée valueOf() convertit une chaîne correspondante en constante d’énumération. Une chaîne qui ne correspond à aucune constante lève une exception.

enum class Day { MON, TUE, WED }

fun main() {
    val d = Day.valueOf("TUE")
    println(d)
}

Utiliser des énumérations comme paramètres

Les énumérations sont d’excellents paramètres de fonction : les appelants ne peuvent transmettre qu’une des constantes valides.

enum class Level { LOW, HIGH }

fun setVolume(level: Level) {
    println("Volume set to $level")
}

fun main() {
    setVolume(Level.HIGH)
}

Les énumérations améliorent la lisibilité

Un code qui contient Direction.NORTH s’explique de lui-même. Par rapport à des nombres magiques comme 0 ou 1, l’intention est évidente.

enum class Gear { PARK, DRIVE, REVERSE }

fun main() {
    val current = Gear.DRIVE
    println("Gear is $current")
}

Un exemple réaliste

Modéliser un petit ensemble de couleurs de cartes est une utilisation parfaite d’une énumération.

enum class Suit { HEARTS, DIAMONDS, CLUBS, SPADES }

fun main() {
    for (suit in Suit.values()) {
        println(suit)
    }
}

Énumérations à constante unique

Même une seule constante est valide ; cette forme sert souvent à modéliser une valeur dont l’unicité est garantie (un singleton de fortune).

enum class AppMode { PRODUCTION }

fun main() {
    println(AppMode.PRODUCTION)
}

Vérification rapide

Vérifiez votre compréhension de la définition des énumérations.

Récapitulatif

Vous avez appris à définir des énumérations :

  • enum class déclare un ensemble fixe de constantes nommées.
  • Chaque constante est une instance singleton accessible via le nom de l’énumération.
  • name et valueOf() assurent la conversion entre constantes et chaînes.
  • Les énumérations empêchent les valeurs non valides au moment de la compilation.
enum class Direction { NORTH, SOUTH, EAST, WEST }

fun main() {
    println(Direction.valueOf("EAST").name)
}
Gratuit pour commencer

Apprends Kotlin avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
51
Leçons
203

Questions Fréquemment Posées

La leçon « Définir des énumérations » est-elle gratuite ?

Oui — le texte complet de « Définir des énumérations » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Kotlin Academy, passe à CoddyKit PRO. Le cours Kotlin Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Définir des énumérations » ?

Ensembles de constantes nommées Tu pratiques Kotlin Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Kotlin Academy ?

Aucune expérience préalable n'est requise. Kotlin Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Définir des énumérations » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Kotlin Academy ?

Oui. Chaque leçon Kotlin Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Définir des énumérations
  2. Propriétés et méthodes des énumérations
  3. Énumérations avec when
  4. Valeurs et ordinaux des énumérations
← Retour à Kotlin Academy