【问题标题】:How can you implement Composite keys in clojure?如何在 clojure 中实现复合键?
【发布时间】:2011-10-06 05:32:52
【问题描述】:

如何在 clojure 中实现复合键?如果我有一张地图 例如,名字和姓氏指向属性列表...。我可以制作一个包含两个字段作为键的映射吗?

同时......在java中你可以覆盖“equals”来为地图制作非常高级的键......如何在clojure中实现复杂的键?

【问题讨论】:

    标签: clojure


    【解决方案1】:

    您可以使用任何类型的正确实现等于的对象作为键。对于 clojure,它包括所有集合类型,因此您可以只使用标准的 clojure 集合作为键。使用二元素向量作为键的示例:

    (def foo {[1 2] :bar [3 4] :baz})
    => #'user/foo
    (foo [1 2])
    => :bar
    

    【讨论】:

      猜你喜欢
      • 2017-06-12
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-08
      • 1970-01-01
      相关资源
      最近更新 更多