代码之家  ›  专栏  ›  技术社区  ›  Mateusz Bartkowski

将每个for对象与对象数组一起使用

  •  0
  • Mateusz Bartkowski  · 技术社区  · 7 年前

    @cars = Cars 有一个数组 car_array 物体的形状 Car 具有实例变量的 @id @mileage ,因此,将其写入伪数组,它是:

    Cars = [
        Car1 = [1, 12000],
        Car2 = [2, 33000]
    ]
    

    each 方法以这种方式迭代汽车:

    @cars.each do |id, mileage|
        ...
    end
    

    ?

    我试着做一个定制 每个 中的方法 Cars :

    def each(&block)
        @car_array.each(&block)
    end
    

    但这只会返回每个 对象输入枚举数。然后我如何转换它们 对象到数组?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Aleksei Matiushkin    7 年前

    在ruby中,我们使用链式方法来完成不同的复杂转换:

    @cars.map do |car|
      [car.id, car.mileage]
    end.each do |id, mileage|
        ...
    end