Структуры принятия решений требуют, чтобы программист указал одно или несколько условий, которые должны быть оценены или протестированы программой, вместе с оператором или инструкциями, которые должны быть выполнены, если условие определено как истинное, и, необязательно, другие операторы, которые должны быть выполнены, если условие определяется как ложное.
В Clojure условие является выражением, которое оценивает его как истинное или ложное. «Если» условие истинно, то оператор # 1 будет выполнен, иначе оператор # 2 будет выполнен.
Выражение «if-do» в Clojure используется, чтобы разрешить выполнение нескольких выражений для каждой ветви оператора «if».
Множество операторов if встроены друг в друга.
Clojure предлагает оператор case, который похож на оператор switch, доступный в языке программирования Java.
Clojure предлагает еще одно оценочное утверждение, называемое «cond» . Этот оператор принимает набор пар test / expression.