在数组中的同一索引位置创建具有多个数组参数的类的新实例的“ruby-ish”方法是什么?
例如,我现在正在做:
array1.each_with_index { |element, i|
MyClass(element, array2[i], array3[i], array4[i])
}
这很好用,但我觉得这不是ruby-ish。还有另一种方法可以在Ruby中执行此操作吗?
- 德里克
答案 0 :(得分:5)
[array1, array2, array3, array4].transpose.map{|args| MyClass(*args)}
答案 1 :(得分:0)
array1.zip(array2, array3, array4){|args| MyClass(*args) }
但要注意不同的数组大小 - 比如在你的例子中,如果它们比array1长,它将丢弃array2-4的数组元素。