Clojure - 运算符


运算是告诉编译器执行特定数学或逻辑操作的符号。

Clojure 有以下类型的运算符 -

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 按位运算符

注意- 在 Clojure 中,运算符和操作数按以下语法方式工作。

句法

(operator operand1 operand2 operandn)

例如,

例子

(+ 1 2)

上面的示例对数字 1 和 2 进行算术运算。

算术运算符

Clojure 语言与任何语言一样支持普通算术运算符。以下是 Clojure 中可用的算术运算符。

显示示例

操作员 描述 例子
+ 两个操作数相加 (+ 1 2) 将给出 3
- 从第一个操作数中减去第二个操作数 (- 2 1) 将给出 1
* 两个操作数相乘 (* 2 2) 将给出 4
/ 分子除以分母 (float (/ 3 2)) 将给出 1.5
公司 增量运算符用于将操作数的值加 1 inc 5 将给出 6
十二月 增量运算符用于将操作数的值减 1 12月5日将给出4
最大限度 返回其参数中最大的一个 最大 1 2 3 将返回 3
分钟 返回其参数中最小的一个 分钟 1 2 3 将返回 1
雷姆 第一个数除以第二个数的余数 rem 3 2 将给出 1

关系运算符

关系运算符允许比较对象。以下是 Clojure 中可用的关系运算符。

显示示例

操作员 描述 例子
= 测试两个对象之间的相等性 (= 2 2) 将给出 true
不= 测试两个对象之间的差异 (not = 3 2) 将给出 true
< 检查左侧对象是否小于右侧操作数 (< 2 3) 将给出 true
<= 检查左侧对象是否小于或等于右侧操作数 (<= 2 3) 将给出 true
> 检查左侧对象是否大于右侧操作数 (> 3 2) 将给出 true
>= 检查左侧对象是否大于或等于右侧操作数 (>= 3 2) 将给出 true

逻辑运算符

逻辑运算符用于计算布尔表达式。以下是 Groovy 中可用的逻辑运算符。

显示示例

操作员 描述 例子
这是逻辑“与”运算符 (或 true true)将给出 true
或者 这是逻辑“或”运算符 (和 true false)将给出 false
不是 这是逻辑“非”运算符 (不是假的)会给出真实的

以下代码片段显示了如何使用各种运算符。

按位运算符

Clojure 提供了四个按位运算符。以下是 Clojure 中可用的按位运算符。

显示示例

先生。 运算符及描述
1

位与

这是按位“与”运算符

2

位或

这是按位“或”运算符

3

位异或

这是按位“异或”或互斥“或”运算符

4

位不

这是按位求反运算符

以下是显示这些运算符的真值表。

p q p&q p| q p^q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

运算符优先级

与 LISP 的一般情况一样,无需担心运算符优先级。这是 S 表达式和前缀表示法的好处之一。所有函数均从左到右、从内到外进行计算。Clojure 中的运算符只是函数,所有内容都完全用括号括起来。