3
Clojure 1.2.0
user=> (def x (repeat 10 1))
#'user/x
user=> (counted? x)
false
user=> (def x (list 1 2 3))
#'user/x
user=> (counted? x)
true
user=>
Clojure 1.2.0
user=> (def x (repeat 10 1))
#'user/x
user=> (counted? x)
false
user=> (def x (list 1 2 3))
#'user/x
user=> (counted? x)
true
user=>
(repeat 10 1)
返回LazySeq
(list 1 2 3)
返回PersistentList
顯然沒有辦法知道多少個項是一個懶惰的序列,直到該序列被評估的方式。
counted?
對於實現接口clojure.lang.Counted
的任何類都返回true。
好的...只是爲了完成圖片。即使在doall計數後?返回false。 doall返回相同的列表,LazySeq。您可以隨時使用(class xs)檢查類型。要將LazySeq轉換爲PersistentList,可以使用(into()myLazySeq) – yalis 2011-03-19 19:01:21