1

我有一个条件,我想测试两件事是否为真。我怎样才能在Scheme中做相当于Java&&或从Java做的事情?||

4

3 回答 3

4

另请注意,不仅:

(and (equals? var1 var2) (equals? var3 var4))

工作,但也:

(and (equals? var1 var2) (equals? var3 var4) (equals? var5 var6))

对比

(and (and (equals? var1 var2) (equals? var3 var4)) (equals? var5 var6))

(and ...) 和 (or ...) 接受任意数量的参数。

于 2010-10-27T06:25:09.360 回答
3

重要的是要注意,and并且or不要返回#t,而是返回满足条件的真实值:要么是中的最后一个真值,and要么是中的第一个真值or

(and 1 2) => 2
(and #f 2) => #f
(and #t 6) => 6
(or 1 2) => 1
(or #f #f 0 #f) => 0
于 2010-10-27T17:06:49.103 回答
0
(and (equals? var1 var2) (equals? var3 var4))
于 2010-10-27T06:19:19.017 回答