gka*_*kck 8 ruby arrays sorting
我有一个从自定义类创建的对象数组.自定义类有一些属性,我想通过其中一个属性对数组进行排序?有没有一种简单的方法在ruby上实现它,或者我应该从头开始编码?
例:
class Example
attr_accessor :id, :number
def initialize(iid,no)
@id = iid
@number = no
end
end
exarray = []
1000.times do |n|
exarray[n] = Example.new(n,n+5)
end
Run Code Online (Sandbox Code Playgroud)
在这里,我想通过其elements number属性对exarray进行排序.
Nik*_*bak 16
sort_by可能是最短的选择
exarray.sort_by {|x| x.number}
Run Code Online (Sandbox Code Playgroud)
这也有效
exarray.sort_by &:number
Run Code Online (Sandbox Code Playgroud)