文字列を受け取り、フィルタ関数の結果を返す関数を作成しようとしています(私は4clojureの問題を解決しています)。結果も文字列でなければなりません。フィルタ関数の結果から文字列を作成できません
私はこれを書いている:
(fn my-caps [s]
(clojure.string/join (filter #(Character/isUpperCase %) s)))
結果:
(fn my-caps [s]
(filter #(Character/isUpperCase %) s))
(my-caps "HeLlO, WoRlD!")
Result: (\H \L \O \W \R \D)
は今、私はこのように、参加/ clojure.stringを使用して、このリストから文字列を作成しようとしていますしかし同じです。私もapply str
を使ってみましたが、成功しませんでした。
ありがとうございます!それは私に二重矢印スレッドマクロを見させました。私は前にスレッドマクロについて知りませんでした。 –
@ntalbsなぜここで ' - >>'演算子を使うのですか?単純な関数呼び出しは 'apply'を呼び出すのに十分です。 –
@ÓscarLópezはい、そうです。結果は同じです。しかし、 ' - >>'を使うと、コードの読み込みを読みやすくし、思考プロセスとして入力するのが簡単になります。それでおしまい。それは個人的な好みのようなものです。 – ntalbs