假设我有一个名为 的函数process
,我只想将其应用于序列元素的子集,my-sequence
然后返回原始序列,只处理元素的子集。
如果 I (map process (filter my-pred my-sequence))
,我将只剩下处理过的元素。
相反,我可以(map #(if (pred %) (process %) %) my-sequence)
。
有没有更惯用/简洁的方法来做到这一点?
假设我有一个名为 的函数process
,我只想将其应用于序列元素的子集,my-sequence
然后返回原始序列,只处理元素的子集。
如果 I (map process (filter my-pred my-sequence))
,我将只剩下处理过的元素。
相反,我可以(map #(if (pred %) (process %) %) my-sequence)
。
有没有更惯用/简洁的方法来做到这一点?