Clojure - Declaración de Cond
Clojure ofrece otra declaración de evaluación llamada ‘cond’declaración. Esta declaración toma un conjunto de pares de prueba / expresión. Evalúa cada prueba de una en una. Si una prueba arroja un resultado lógico verdadero, 'cond' evalúa y devuelve el valor de la expresión correspondiente y no evalúa ninguna de las otras pruebas o expresiones. 'cond' devuelve nil.
Sintaxis
A continuación se muestra la forma general de esta declaración.
cond
(expression evaluation1) statement #1
(expression evaluation2) statement #2
(expression evaluationN) statement #N
:else statement #Default
El funcionamiento general de esta declaración es el siguiente:
Hay múltiples evaluaciones de expresión definidas y para cada una hay una declaración que se ejecuta.
También hay una declaración predeterminada, que se ejecuta si ninguno de los valores anteriores se evalúa como verdadero. Esto está definido por la declaración: else.
Ejemplo
A continuación se muestra un ejemplo de la declaración 'cond' en 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)
En el ejemplo anterior, primero estamos inicializando una variable x a un valor de 5. Luego tenemos una declaración 'cond' que evalúa el valor de la variable 'x'. Según el valor de la variable, ejecutará el conjunto de declaraciones relevantes.
Salida
El código anterior produce la siguiente salida.
x is 5