在 C++ 世界中,我可以这样做(字符具有可比性):
bool isDigit(char c) {
return '0' <= c && c <= '9';
}
在 Clojure 中,我可以比较相等,但可以比较少:
(= \a \b) ; [compiles] false
(< \a \b) ; java.lang.Character cannot be cast to java.lang.Number
如何在 Clojure 中实现这一点?如何检查一个字符是否在一个范围内?我可以像这样以重量级的方式做到这一点:
(defn isDigit [c] (#{\0 \1 \2 \3 \4 \5 \6 \7 \8 \9} c))