Clojure - Énoncé de cas

Clojure propose le ‘case’ instruction qui est similaire à la ‘switch’instruction disponible dans le langage de programmation Java. Voici la forme générale de l'énoncé de cas.

Syntaxe

case expression
value1 statement #1
value2 statement #2
valueN statement #N
statement #Default

Le fonctionnement général de cette déclaration est le suivant -

  • L'expression à évaluer est placée dans l'instruction «case». Cela évaluera généralement à une valeur, qui est utilisée dans les instructions suivantes.

  • Chaque valeur est évaluée par rapport à celle qui est passée par l'expression «case». En fonction de la valeur vraie, l'instruction suivante sera exécutée.

  • Il existe également une instruction par défaut qui est exécutée si aucune des valeurs précédentes n'est évaluée comme vraie.

Le diagramme suivant montre le déroulement de l'instruction «if».

Exemple

Voici un exemple de la déclaration «case» dans Clojure.

(ns clojure.examples.hello
   (:gen-class))

;; This program displays Hello World
(defn Example []
   (def x 5) 
   (case x 5 (println "x is 5")
      10 (println "x is 10")
      (println "x is neither 5 nor 10")))
(Example)

Dans l'exemple ci-dessus, nous initialisons d'abord une variable «x» à une valeur de 5. Nous avons ensuite une instruction «case» qui évalue la valeur de la variable «x». En fonction de la valeur de la variable, il exécutera l'ensemble d'instructions de cas approprié. La dernière instruction est l'instruction par défaut, si aucune des instructions précédentes n'est exécutée.

Production

Le code ci-dessus produit la sortie suivante.

x is 5