Elisp快速自学笔记(2)条件语句与循环

原创
2021/09/07 15:30
阅读数 176

条件语句

if基本结构

(if  条件判断表达式
    (条件为真时执行的语句,只能有一句)
  条件为假时执行的语句,可以有多句)

例如:

(if (< 3 4)
    (message "3 is less than 4")
  (message "First false line")
  (message "Second false line"))

如果你的true部分有多句,使用progn进行包裹。

when语句

when相当于没有else的if语句,但是可以包含多条执行语句。

unless语句

unless是when的相反判断。使用方法一样。

cond语句

有点类似于c或者其他语言的switch,形如:

(setq a 1)
(cond ((eq a 1) "One")
      ((eq a 2) "Two")
      ((eq a 3) "Three"))

循环

while循环

与一般的语言的while没有区别。

dotimes

(dotimes (count 5)
    (message "%d" count))

dolist

遍历列表使用。

(dolist (item '(1 2 3 4 5))
    (message "%d" item))

递归

递归很多时候使用起来非常方便。但递归有风险(爆栈),使用需谨慎。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
0
分享
返回顶部
顶部