我想不出一种方法来搜索列表以确保它具有所有整数。nil
如果有非整数数据,我想立即返回,如果没有,我想继续我的功能。
我试图制作的递归函数将cons
与car
列表cdr
的。通过我所做的尝试,我无法返回nil
。我只能忽略非整数数据。例如,(add-1-all '(1 2 3 a))
将(2 3 4)
在每个数字加一后返回。
(defun add-1-all (L)
(if (null L)
L
(if (integerp (car L))
(cons (+ (car L) 1) (add-1-all (cdr L)))
nil)))
我确实知道缺点正在发生这种情况,因为递归正在添加到列表中。