我開始學習clojure,我被這個東西卡住了,我有一個Java的知識,也許我的方法太類似java,但我真正的問題是 - 我做了一個函數,讓我們用戶鍵入幾個字符串,現在我想當用戶輸入這些字符串來創建一個新的對象,然後將其插入到列表中,以便我可以稍後顯示該列表的元素,該如何完成?我試過...添加新的對象列表並顯示它們
(defn unesi []
(println "Unesite ime i prezime studenta: ")
(let [imePrezime (read-line)]
(println "Unesite index studenta: ")
(let [index (read-line)]
(println "Unesite email studenta: ")
(let [email (read-line)]
(def s1 {:ime imePrezime :index index :email email})
(println "Uspjesno ste unijeli studenta!")
)
)
)
)
我已成功地使一個新的對象,但它始終是相同的一個,我怎麼能隨時添加一個新的?以及如何將它添加到列表中後,顯示的元素?
石勒然後訪問列表,@議論後GuillermoWinkler的回答針對您的具體問題,你的例子可能不開始是正確的。但從另一個角度來說,如果你以不同的眼光來看,它可能是一個開始的好地方。也許你不需要改變同一個對象。在Clojure中,扔掉不再需要的數據結構並創建一個新的數據結構通常是有意義的。這可能會更容易。一旦Clojure強調不可變數據結構以支持多處理器的有效使用,其結果是可變數據結構難以使用。 – Mars