Ruby对象数组按属性排序

在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

你可能感兴趣的:(ruby,计算,ruby,rails,360)