代码之家  ›  专栏  ›  技术社区  ›  holden

一行Ruby数组创建和填充

  •  0
  • holden  · 技术社区  · 15 年前

    这是相当微不足道的,但它困扰着我,我还没有找到答案,使用谷歌或这个论坛。但我怎样才能把它变成一行呢?不必声明房间上面有一个数组吗?

    rooms = []
    hwdata.availability.each {|room| rooms << room.name}
    
    2 回复  |  直到 15 年前
        1
  •  7
  •   Chuck    15 年前
    rooms = hwdata.availability.collect {|room| room.name}
    

    或者在Ruby1.9中,甚至更简洁:

    rooms = hwdata.availability.collect &:name
    
        2
  •  0
  •   khelll    15 年前

    或者你也可以使用地图。

    rooms=hwdata.availability.map room room.name