(apply str (vec (rev-6ren">
gpt4 book ai didi

clojure - 反转字符串(简单问题)

转载 作者:行者123 更新时间:2023-12-03 00:56:30 27 4
gpt4 key购买 nike

在 Clojure 中是否有更好的方法来做到这一点?

daniel=> (reverse "Hello")
(\o \l \l \e \H)

daniel=> (apply str (vec (reverse "Hello")))
"olleH"

每次想要将字符串反转回其原始形式时,是否都必须执行 apply $ str $ vec 位?

最佳答案

您最好使用clojure.string/reverse :

user=> (require '[clojure.string :as s])
nil
user=> (s/reverse "Hello")
"olleH"
<小时/>

更新:为了好奇,请遵循 Clojure (v1.4) 和 ClojureScript 中 clojure.string/reverse 的源代码片段

; clojure:
(defn ^String reverse
"Returns s with its characters reversed."
{:added "1.2"}
[^CharSequence s]
(.toString (.reverse (StringBuilder. s))))

; clojurescript
(defn reverse
"Returns s with its characters reversed."
[s]
(.. s (split "") (reverse) (join "")))

关于clojure - 反转字符串(简单问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7469449/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com