Lists是有序集合
Lists
list是有序链表,和vector不同的是添加新元素的时候是添加在集合的头部。
值得注意的是,因为list会以第一个元素为函数去求值,所以我们要在list前加'
防止求值。
创建list
user=> (def nums '(5 5 6))
#'user/nums
user=> nums
(5 5 6)
因为list是没有索引的所以我们只能同通过first和rest去访问他的元素
user=> (first nums)
5
user=> (rest nums)
(5 6)
添加元素,和vector不同每次都是添加到集合的头部
user=> (conj nums 7)
(7 5 5 6)
list可以当做一个栈去使用
user=> (peek nums)
5
user=> (pop nums)
(5 6)