Articles

Rubyの実装'のCollectメソッド

RubyのCollectメソッド

Rubyのcollectメソッドは列挙可能なmixinの一部です。 collectは、私がいつも使用しているメソッドであり、最近私の記事でenumerablesでの作業:四つの強力なコレクションメソッドについて書きました。p>

collectコレクションオブジェクト(配列、ハッシュ、または独自のオブジェクト)の各要素を別のものに変換し、配列で終わることができます。

整数の配列を取り、それぞれに2を掛ける簡単な例を次に示します。P>

.collect{ |num| num * 2 }
#

Collectメソッドの再実装

独自のcollectkollect(名前が競合しないように)を列挙可能なモジュールに追加します。 コレクションをループして、各要素にブロックを適用し、返された結果を作成中の新しい配列に追加します。

module Enumerable
def kollect
new_ary =
self.each do |elem|
new_ary << yield(elem)
end
new_ary
end
end

これをRubyのソースコードと比較すると、本質的には同じことを行いますが、CではなくRuby自体で作業しているため、はるかに簡単です。

新しいCollectメソッドを使用して

残っているのは、kollect&&:method_name構文は、両方の作業を確実にします。

素晴らしい! どちらの場合も、配列内の名前を取得し、大文字に変換します。