Clojure - 向結構新增新鍵



由於結構是不可變的,向結構新增其他鍵的唯一方法是建立新的結構。以下程式展示瞭如何實現這一點的一個示例。

示例

(ns clojure.examples.example
   (:gen-class))
(defn Example []
   (defstruct Employee :EmployeeName :Employeeid)
   (def emp (struct-map Employee :EmployeeName "John" :Employeeid 1))
   (def newemp (assoc emp :EmployeeRank "A"))
   (println newemp))
(Example)

在上述示例中,我們將一個名為 EmployeeRank 的新鍵與結構關聯,但透過建立一個新的結構物件。

輸出

以上程式產生以下輸出。

{:EmployeeName John, :Employeeid 1, :EmployeeRank A}
clojure_structmaps.htm
廣告