[英]clojure sorting map values alphabetically by a keyword
How would I sort 我该如何排序
{
{:name "d" :id 2}
{:name "f" :id 3}
{:name "a" :id 1}
{:name "z" :id 9}
}
Alphabetically by name? 按字母顺序? Like this: 像这样:
{
{:name "a" :id 1}
{:name "d" :id 2}
{:name "f" :id 3}
{:name "z" :id 9}
}
When in doubt, be sure to look at the Clojure CheatSheet . 如有疑问,请务必查看Clojure CheatSheet 。
In this case just use sort-by
在这种情况下,只需使用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})
Note that I had to fix your data to use square brackets [...]
请注意,我必须修复您的数据才能使用方括号[...]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.