LISP - 比较运算符


下表显示了 LISP 支持的所有用于在数字之间进行比较的关系运算符。然而,与其他语言中的关系运算符不同,LISP 比较运算符可能需要两个以上的操作数,并且它们仅适用于数字。

假设变量A为 10,变量B为 20,则 -

操作员 描述 例子
= 检查操作数的值是否全部相等,如果相等则条件成立。 (= AB) 不正确。
/= 检查操作数的值是否全部不同,如果值不相等则条件成立。 (/= AB) 为真。
> 检查操作数的值是否单调递减。 (> AB) 不正确。
< 检查操作数的值是否单调递增。 (<AB) 为真。
>= 检查任何左操作数的值是否大于或等于下一个右操作数的值,如果是,则条件为真。 (>= AB) 不正确。
<= 检查任何左操作数的值是否小于或等于其右操作数的值,如果是,则条件为真。 (<= AB) 为真。
最大限度 它比较两个或多个参数并返回最大值。 (最大 AB)返回 20
分钟 它比较两个或多个参数并返回最小值。 (最小 AB)返回 10

例子

创建一个名为 main.lisp 的新源代码文件,并在其中键入以下代码。

(setq a 10)
(setq b 20)
(format t "~% A = B is ~a" (= a b))
(format t "~% A /= B is ~a" (/= a b))
(format t "~% A > B is ~a" (> a b))
(format t "~% A < B is ~a" (< a b))
(format t "~% A >= B is ~a" (>= a b))
(format t "~% A <= B is ~a" (<= a b))
(format t "~% Max of A and B is ~d" (max a b))
(format t "~% Min of A and B is ~d" (min a b))

当您单击“执行”按钮或键入 Ctrl+E 时,LISP 会立即执行它,返回的结果是 -

A = B is NIL
A /= B is T
A > B is NIL
A < B is T
A >= B is NIL
A <= B is T
Max of A and B is 20
Min of A and B is 10
lisp_operators.htm