Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Enumerable::Enumeratorクラス > with_index

instance method Enumerable::Enumerator#with_index

with_index {|(*args), idx| ... } -> object[permalink][rdoc]
with_index -> Enumerator

生成時のパラメータに従って、要素にインデックスを添えて繰り返します。 インデックスは 0 から始まります。

ブロックを指定した場合の戻り値は生成時に指定したレシーバ自身です。

例:

str = "xyz"

enum = Enumerable::Enumerator.new(str, :each_byte)
enum.with_index {|byte, idx| p [byte, idx] }
    # => [120, 0]
    #    [121, 1]
    #    [122, 2]

生成時のパラメータに従って、要素にインデックスを添えてブロックを繰り返します。 インデックスは 0 から始まります。