use*_*206 0 ruby arrays sorting ruby-on-rails
我知道这可能会回答一百万次,但我无法找到我想做的事情.
我有一个数组如下:
tag_array = [[tag1, tag_count1], [tag1, tag_count2], [tag3, tag_count3], [tag4, tag_count4]]
Run Code Online (Sandbox Code Playgroud)
我想根据tag1,tag2,tag3按字母顺序排序...
我尝试过以下方法:
tag_array.sort {|a,b| a[0] <=> b[0]}
Run Code Online (Sandbox Code Playgroud)
但没有运气!
我错过了什么吗?
谢谢!
PS:tag1,tag2,tag3 ...是字符串.
Enumerable#sort_by 来救援:
tag_array.sort_by { |el| el.first }
Run Code Online (Sandbox Code Playgroud)
上面的内容可能用简短的符号表示(@ justin-licata的积分):
tag_array.sort_by &:first
Run Code Online (Sandbox Code Playgroud)
sort_by事实证明,BTW 效率更高sort.