Clojure - Dichiarazione Cond

Clojure offre un'altra dichiarazione di valutazione chiamata ‘cond’dichiarazione. Questa istruzione accetta una serie di coppie test / espressione. Valuta ogni test uno alla volta. Se un test restituisce true logico, "cond" valuta e restituisce il valore dell'espressione corrispondente e non valuta nessuno degli altri test o espressioni. 'cond' restituisce nil.

Sintassi

Di seguito è la forma generale di questa dichiarazione.

cond
(expression evaluation1) statement #1
(expression evaluation2) statement #2
(expression evaluationN) statement #N
:else statement #Default

Il funzionamento generale di questa affermazione è il seguente:

  • Ci sono più valutazioni di espressioni definite e per ciascuna c'è un'istruzione che viene eseguita.

  • C'è anche un'istruzione predefinita, che viene eseguita se nessuno dei valori precedenti restituisce vero. Questo è definito dall'istruzione: else.

Esempio

Di seguito è riportato un esempio della dichiarazione "cond" in Clojure.

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

;; This program displays Hello World
(defn Example []
   (def x 5)
   (cond
      (= x 5) (println "x is 5")
      (= x 10)(println "x is 10")
      :else (println "x is not defined")))
(Example)

Nell'esempio precedente, inizializziamo prima una variabile x con un valore di 5. Abbiamo quindi un'istruzione "cond" che valuta il valore della variabile "x". In base al valore della variabile, eseguirà il set di istruzioni pertinente.

Produzione

Il codice precedente produce il seguente output.

x is 5