collections - 从 Clojure 中的集合中删除一个条目
问题描述
我是 Clojure 的新手,我想知道如何从集合中删除一个元素。
说我有:
(def example ["a" "b" "c"])
我希望能够删除说“b”,当我打电话时
(println example)
并让它返回一个只有“a”和“c”的集合
我知道 using(remove (partial = "b") example)
会返回我想要的但是我如何用这个更新示例变量?
谢谢!
解决方案
(filter (fn [x] (not (= x "b"))) example)
会得到你'("a" "c")
。几点:
- 你不应该考虑突变。通常使用函数式编程,特别是使用具有持久性数据结构的 clojure 的全部目的是避免与可变性相关的问题。
- 如果你真的,真的需要一些可变的东西,你可以使用原子,但如果你不确定你需要它是可变的,你不需要。
推荐阅读
- android - Android:使用蓝牙 RxAndroidBle 库进行语音通话(聊天)的可能性?
- java - Gradle&Junit5 基于标签的 Gradle 任务在使用 & 表达式时不起作用
- c# - 如何获得 Windows 窗体相对于显示器的正确位置?
- python - 使用模式将多个文本文件作为参数传递给脚本
- android - 在 Firebase 上应用数据挖掘技术
- javascript - 在 2 个不同的画布中复制粘贴
- ios - iOS:这个 NSPersistentStoreCoordinator 没有持久存储 => 如何检查应用程序中的 sqlite 数据库是否与模型对应?
- codenameone - 如何将多个浏览组件放在一个代号容器中?
- ios - iOS中的本地通知(目标C)
- mojolicious - 带有正则表达式的 Mojolicious Lite 路由