clojure-基本语法-集合(三)
操作集合的通用语句
1、count:
count函数返回集合中元素的个数,如果count参数为nil,则返回0
user=> (count nil)0user=> (count [])0user=> (count [1 2 3])3user=> (count '(1 "a"))2user=> (count {:one 1 :two 2})2user=> (count "string")6user=> (empty [1 2 3])[]user=> (empty (list 1 2 3))()user=> (empty {:key1 1}){}user=> (empty nil)niluser=> (not-empty [])niluser=> (not-empty '(1 2 3))(1 2 3)
user=> (into {} [[1 2] [3 4]]){1 2, 3 4}user=> (into [] {:a 1 :b 2})[[:a 1] [:b 2]]user=> (into () '(1 2 3))(3 2 1)user=> (into ["a" "b"] '(1 2 3))["a" "b" 1 2 3]user=> (contains? {:a 1} :a)trueuser=> (contains? {:a nil} :a)trueuser=> (contains? {:a 1} :b)falseuser=> (contains? [:a :b :c] :b)falseuser=> (contains? [:a :b :c] 2)trueuser=> (contains? "f" 0)trueuser=> (contains? "f" 2)falseuser=> (contains? '(1 2 3) 1)falseuser=> (contains? #{"a" "b" "v"} "a")trueuser=> (contains? #{"a" "b" "c"} "z")falseuser=> (distinct? 1 2 3)trueuser=> (distinct? 1 1 2 3)falseuser=> (distinct? "a" "b" "a")false
user=> (empty? ())trueuser=> (empty? '(1 2 3))falseuser=> (empty? [])trueuser=> (empty? {})trueuser=> (empty? #{})trueuser=> (every? even? '(2 4 6))trueuser=> (every? odd? '(1 3 9))trueuser=> (every? true? '())trueuser=> (every? false? '())true
user=> (not-every? odd? '(1 2 3))trueuser=> (not-every? odd? '(1 3))false
user=> (some even? '(1 2 3 4))trueuser=> (some even? '(1 3 5 7))niluser=> (some true? [false false false])niluser=> (some true? [false true false])true
user=> (not-any? odd? '(2 4 6))trueuser=> (not-any? odd? '(1 2 3))false
user=> (sequential? '(2 1 3))trueuser=> (sequential? {:a 1 :d 2 :b 3})falseuser=> (sequential? 1)falseuser=> (associative? [1 2 3])trueuser=> (associative? '(1 2 3))false
user=> (sorted? (sorted-set 5 3 1 2 4))trueuser=> (sorted? (sorted-map :a 1 :c 3 :b 2))trueuser=> (sorted? [1 2 3 4 5])false
user=> (sorted? [1 2 3 4 5])falseuser=> (counted? [:a :b :c])trueuser=> (counted? '(:a :b :c))trueuser=> (counted? {:a 1 :b 2 :c 3})trueuser=> (counted? "asdf")falseuser=> (reversible? [])trueuser=> (reversible? '())falseuser=> (reversible? #{})falseuser=> (coll? {}) true user=> (coll? #{}) true user=> (coll? []) true user=> (coll? ()) true user=> (coll? 4) falseuser=> (coll? "fred") falseuser=> (coll? true) falseuser=> (coll? nil) falseuser> (seq? 1) false user> (seq? [1]) false user> (seq? (seq [1])) true
user=> (vector? [1 2 3]) true user=> (vector? '(1 2 3)) false user=> (vector? (vec '(1 2 3))) true
user=> (list? '(1 2 3)) true user=> (list? (list 1 2)) true user=> (list? 0) false user=> (list? {}) false user=> (list? []) false user=> (map? {:a 1 :b 2 :c 3}) true user=> (map? '(1 2 3)) false user> (set? #{1 2 3}) true user> (set? [1 2 3]) false user> (set? {:a 1 :b 2}) false public class PersistentList extends ASeq implements IPersistentList, IReduce, List, Counted