Ruby对象数组按属性排序

来源:互联网 发布:日本股票行情软件 编辑:程序博客网 时间:2024/06/11 21:30

在Rails里,我们可以用sort_by方法对一个Ruby对象数组按照某个属性进行排序,如:

User.find(:all).sort_by {|u| u.name.downcase}   

等效于

@users = User.find(:all)       @users.sort! { |a,b| a.name.downcase < => b.name.downcase } 

sort!后面的!使得排序结果直接存入数组@users中,如果不想排序破坏@users数组,直接用sort即可。

参考文献:Ruby: Sort an array of objects by an attribute

转自:http://cpccai.iteye.com/blog/123608

原创粉丝点击