单线ruby数组的创建和填充
这是相当琐碎的,但它困扰着我没有结束,我还没有找到答案使用谷歌或这个论坛。但我怎样才能把它变成一行呢?不需要在上面声明一个数组吗单线ruby数组的创建和填充,ruby,arrays,Ruby,Arrays,这是相当琐碎的,但它困扰着我没有结束,我还没有找到答案使用谷歌或这个论坛。但我怎样才能把它变成一行呢?不需要在上面声明一个数组吗 rooms = [] hwdata.availability.each {|room| rooms << room.name} rooms=[] hwdata.availability.each{| room | rooms 或者在Ruby 1.9中,更加简洁: rooms = hwdata.availability.collect &:name
rooms = []
hwdata.availability.each {|room| rooms << room.name}
rooms=[]
hwdata.availability.each{| room | rooms
或者在Ruby 1.9中,更加简洁:
rooms = hwdata.availability.collect &:name
或者你也可以使用#map
rooms=hwdata.availability.map{| room | room.name}进一步信息:map
只是collect
的另一个名称。因此您确实可以使用其中任何一个。
rooms = hwdata.availability.collect &:name