Я пытаюсь изучить clojure.Convert clojure persistant vector to maps
Я вызываю функцию, которая возвращает мне массив строк ..
Если я:
(let [items (get-all-items)]
(println (type items))
(items))
type
из items
показан как class clojure.lang.PersistentVector
, где в качестве значения items
, как так :
[["Dogs"] ["Cats"] ["Capybaras"] ["Pygmy Hedgehogs"]]
Я хотел бы преобразовать это карта в формате, как это:
{ "Dogs" "Cats" "Capybaras" "Pygmy Hedgehogs" }
Имеет ли это значение? Карты Clojure могут содержать список строк справа?
Я только делаю это потому, что если у меня есть это как карту, я могу проверить, если у меня есть домашнее животное в списке, как это:
(contains? pets "Dogs")
; assuming the map is stored in pets variable
что терпит неудачу, если pets
вектор.
Итак, если я могу преобразовать это в карты, как его преобразовать? если нет, как мне искать что-то в векторе?
(Я люблю работать с картами, так что я предпочел бы иметь карты - если нет веской причины не делать этого)
пса: Я попытался преобразование с into, но это не работает, либо ,
Похоже, вы хотите набор, а не карту. «У собак» есть ценность, отличная от самой себя, или вы просто проверяете членство? –
@FrancisAvila, просто тестирование на членство .. поэтому карты всегда имеют ценность с ними? то наборы будут лучше! – Alexander