私はハッシュマップを持っています。値を反復処理し、値のタイプに応じてそれぞれを置き換えたいと思います。値が整数のtrue
場合は に置き換え、そうでない場合は に置き換えfalse
ます。これにより、すべての値が true または false に更新された新しいハッシュマップが返されます。
(defn my-function [hash-map]
(loop [hash-map hash-map]
(for [value (vals hash-map)]
(if (= Integer (type value))
(recur (assoc hash-map key true))
(recur (assoc hash-map key false))))))
Clojure のため、それは機能しませんCan only recur from tail position
が、それが私がやりたいことの一般的な考え方です。これを行うための効果的な方法のアイデアはありますか? if-let
潜在的な解決策のようにupdate-in
思えましたが、私はそれらを完全に把握することはできません.