Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > matrixライブラリ > Vectorクラス > collect2
collect2(v) {|x, y| ... } -> Array
[permalink][rdoc]collect2(v) -> Enumerator
ベクトルの各要素と引数 v の要素との組に対してブロックを評価し、その結果を要素として持つ配列を返します。
ベクトルの各要素と、それに対応するインデックスを持つ引数 v (ベクトル or 配列)の要素との組に対して (2引数の) ブロックを評価し、その結果を要素として持つ配列を返します。
ブロックを省略した場合は Enumerator を返します。
[SEE_ALSO] Vector#map2
次の例は、2つのベクトルの要素毎の積を要素とする配列を生成します。
例:
require 'matrix' v1 = Vector[2, 3, 5] v2 = Vector[7, 9, 11] a = Array[7, 9, 11] z = v1.collect2(v2){|x, y| x * y } p z #=> [14, 27, 55] z = v1.collect2(a) {|x, y| x * y } # ArrayでもOK p z #=> [14, 27, 55]