logo       

[ruby-list:42403] Re: eachはなぜ元々のオブジェクトが返るのか?: msg#00057

lang.ruby.japanese

Subject: [ruby-list:42403] Re: eachはなぜ元々のオブジェクトが返るのか?

おはようございます、ふじおかです。

> each は、Array だけでなく、他にも色々使われますよね。
> たとえば、Hash クラスのインスタンスで each が使われた時、
> 何が返る(べき)か、と考えてみると、参考になるかも知れません。
> Hash の each で、仮に Array の map と同じような戻り値にするなら、
> 各ループで「生成された」Hash の集合体の Hash を返すことになりそう
> ですが……、それがどういうものかは、全然、自明ではないですよね。
>
確かに自明ではないです。でも、全部同じくブロックの値を
配列で返してもいいのではないかと思いました。

> # 僕は、each の戻り値を気にしたことはありませんでした。
> # それで想定された使い方だったと分かったのは収穫でした (^^)
>
自明ではないのですが、利用している人もいないだろうから、
mapの役割を担ってもいいのではないかと思った次第でした。
んで、結論はenumrateを使えということなので、
そうすることにします。とりあえず便利に使えればいいので。^^;





<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise