false 和 true
如果一个值不是nil, 则为true
elisp用symbol t 的表示true,用symbol nil 的表示false
if语句
简单例子
(if t
(message "true")
(message "false"))
结果是显示true
多个语句组合
经常需要在if或者else块中调用多个语句。可以这样使用:
(progn
(list1..)
(list2...)
)
例子:(if t
(progn
(message "true")
(message "true"))
(message "false"))
结果:
"true"
"true"
else逻辑
lisp没有提供else语句,但是只需要在if条件的执行语句之后另起一行,就相当于在写else语句。
(if (> 4 5) ; if-part
(message "4 falsely greater than 5!") ; then-part
(message "4 is not greater than 5!")) ; else-part
when语句
是if的变体,去掉了else部分。
(when condition a b c)
等同于
(if condition (progn a b c) nil)