сортировка значений карт в алфавитном порядке по ключевому слову - PullRequest
0 голосов
/ 23 ноября 2018

Как бы я отсортировал

{
 {:name "d" :id 2}
 {:name "f" :id 3}
 {:name "a" :id 1}
 {:name "z" :id 9}
}

в алфавитном порядке по имени?Как это:

{
 {:name "a" :id 1}
 {:name "d" :id 2}
 {:name "f" :id 3}
 {:name "z" :id 9}
}

1 Ответ

0 голосов
/ 23 ноября 2018

В случае сомнений обязательно посмотрите Clojure CheatSheet .

. В этом случае просто используйте sort-by

(def data
  [{:name "d" :id 2}
   {:name "f" :id 3}
   {:name "a" :id 1}
   {:name "z" :id 9}])

(sort-by :name data) => 
  ({:name "a", :id 1}
   {:name "d", :id 2}
   {:name "f", :id 3}
   {:name "z", :id 9})

Обратите внимание, что мне пришлосьисправить ваши данные, чтобы использовать квадратные скобки [...]

...