Operações em sets


Unir

A função conj (“conjoin”) adiciona elementos ao conjunto.

Se o elemento já existir, o valor do conjunto permanece inalterado devido à restrição de duplicatas.

(def players #{"Alice" "Bob" "Kelly"})
 
(conj players "Fred")
;; => #{"Alice" "Fred" "Bob" "Kelly"}
 
(conj players "Alice")
;; => #{"Alice" "Bob" "Kelly"}
 

Remoção

A função disj (“disjoin”) remove um ou mais elementos. É seguro tentar remover elementos que não existem no conjunto original.

(disj players "Bob" "Sal")
;; => #{"Alice" "Kelly"}
 

Verificação de Pertencimento

A função contains? checa a existência de um elemento, retornando um valor de booleano.

(contains? players "Kelly")
;; => true
 
(contains? players "John")
;; => false
 

Referências


https://clojure.org/guides/learn/hashed_colls#_sets