class TestClass
attr_accessor :name, :id
end
values = ["test1", "test2"]
mapped_values = values.map{|value|
test_class = TestClass.new
test_class.name = value
test_class.id = #some random number
return test_class
}
puts mapped_values
顯然這不起作用,它只會返回第一個值而不是新構建的整個列表。 我有這個測試腳本,我想要實現的是它從Array.map操作返回值名稱和ID的TestClass的列表。我只是想在Ruby中找到最好的方法。如何在ruby Array Map中構造一個對象?
我可以做這樣的事情
tests = []
values.each do |value|
test_class = TestClass.new
test_class.name = value
test_class.id = #some random number
tests << test_class
end
我相信一定有這樣做的更好的辦法?
您的底部示例*非常容易閱讀和理解。 – slhck 2013-03-20 09:56:55