string - 为什么以下 Clojure 未检测到回文?

标签 string clojure comparison palindrome

我只是想转换为字符串并与相反的内容进行比较

(defn is-palindrome? [num]
  (= (str num) (reverse (str num))))

类似的东西

(is-palindrome 1221)

返回 false

最佳答案

试试这个:

(defn is-palindrome? [num]
  (= (str num) (apply str (reverse (str num)))))

在您的代码中,表达式 (reverse (str 1221)) 返回字符列表 (\1\2\2\1),需要将其返回为字符串以便进行比较。或者,您可以将这两个数字转换为字符列表并执行列表比较:

(defn is-palindrome? [num]
  (= (seq (str num)) (reverse (str num))))

关于string - 为什么以下 Clojure 未检测到回文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9146838/

相关文章:

Java:将一组字符转换为单个字符串

c++ - 如何在数组中存储地址 - C++?

string - 帮忙做个算法

python - 如何检查两个单词是否是字谜python

clojure - 显示为文本字段的 Reagent-Forms 单选按钮

java - 中文或日文字符串比较

loops - 迭代 clojure 映射对(循环)

clojure - 在 Clojure 中定义匿名函数时出错

cakephp - cakePHP 框架的缺点

algorithm - 比较两棵树之间差异的算法有哪些?