我试图找出字符串中是否有任何字符不是可打印字符Array<GameObject>
。我尝试了2个函数,其中一个使用(integer value > 127)
,另一个使用ormap
,但是两个都不起作用:
for/or
两者都给出相同的错误:
(define (isBinary line)
(for/or ([ch line])
((char->integer ch) > 127)))
(define (isBinary2 line)
(ormap (lambda (ch) ((char->integer ch) > 127)) (string->list line)))
(displayln (isBinary "abcd1234"))
(displayln (isBinary2 "abcd1234"))
问题出在哪里,如何解决?感谢您的帮助。
答案 0 :(得分:2)
不同于其他语言,其中>
是运算符的名称,在球拍>
中是常规函数的名称。要比较两个数字,请写(< a b)
,这是使用<
的标准方法。
对于喜欢中缀符号的人,Racket还提供了一种不常用的语法:
(a . < . b)
将被读者转化为
(< a b)