gpt4 book ai didi

arrays - 在 clo j ure 中拆分 String 然后打印

转载 作者:行者123 更新时间:2023-12-02 06:36:07 24 4
gpt4 key购买 nike

我是 clo j ure 的新手。我想拆分一个String然后打印。如果我这样做:

(.split "Dasher Dancer Prancer" " ")

它给出了 #<String[] [Ljava.lang.String;@64e0e8ca>这就是 toString()数组的。

那么如果我这样做:

(.length (.split "Dasher Dancer Prancer" " "))

它给出 java.lang.IllegalArgumentException: No matching field found: length for class [Ljava.lang.String;

最佳答案

使用clojure.string/split相反:

user=> (clojure.string/split "Dasher Dancer Prancer" #" ")
["Dasher" "Dancer" "Prancer"]

不需要为此使用 java interop。

如果你需要长度,使用count :

user=> (count (clojure.string/split "Dasher Dancer Prancer" #" "))
3

您尝试调用的 .split 是对 String 的简单 java 方法调用,它返回一个数组,然后由 repl 将其转换为 String 通过在其上调用 toString。正如您所注意到的,它没有给您想要的结果。

另一方面,

clojure.string/split 返回 clojure.lang.PersistentVector,它具有 .toString 方法,将内容打印为预期。

关于arrays - 在 clo j ure 中拆分 String 然后打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18552992/

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