У меня есть условие, и я хочу проверить, соответствуют ли две вещи. Как я могу сделать эквивалент &&
или ||
от Java на схеме?И И ИЛИ логические операторы в схеме
0
A
ответ
0
(and (equals? var1 var2) (equals? var3 var4))
3
Также отметим, что не только делает:
(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))
(и ...) и (или ...) принимают любое количество аргументов.
2
Важно отметить, что and
и or
не возвращаются #t
, но, скорее, truthy значение, для которого условие было удовлетворено: последнее истинное значение в and
или первое истинное значение в or
.
(and 1 2) => 2
(and #f 2) => #f
(and #t 6) => 6
(or 1 2) => 1
(or #f #f 0 #f) => 0