Use `.contains` when you need to test whether a Clojure vector contains a value or a string contains a substring. It calls an underlying Java method; it is not the same operation as Clojure’s `contains?`. section 8.2.3 section 12.1
Values, not vector indexes
For a vector, `.contains` compares values, while `contains?` checks whether an index is present: ```clojure (.contains [1 2 :a :b] :a) ; => true (contains? [1 2 :a :b] :a) ; => false (.contains [1 2 :a :b] 3) ; => false (contains? [1 2 :a :b] 3) ; => true ``` section 12.1
Strings and maps
A string’s `.contains` checks for a substring. Do not assume the same method is available on every collection: the map call below fails. For map keys, use `contains?` instead. ```clojure (.contains "somelongstring" "long") ; => true (.contains {:a 1} :a) ; => IllegalArgumentException (contains? {:a 1} :a) ; => true ``` section 8.2.3

