LISP - 案例构造


case构造像cond构造一样实现多个测试操作子句。然而,它评估一个关键形式并允许基于该关键形式的评估的多个操作子句。

case 宏的语法是 -

CASE 的模板是

(case  (keyform)
((key1)   (action1   action2 ...) )
((key2)   (action1   action2 ...) )
...
((keyn)   (action1   action2 ...) ))

例子

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

(setq day 4)
(case day
(1 (format t "~% Monday"))
(2 (format t "~% Tuesday"))
(3 (format t "~% Wednesday"))
(4 (format t "~% Thursday"))
(5 (format t "~% Friday"))
(6 (format t "~% Saturday"))
(7 (format t "~% Sunday")))

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

Thursday
lisp_decisions.htm