Rubyプログラマーに聞きたいことがあるんだが

■ このスレッドは過去ログ倉庫に格納されています
1以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:14:11.645ID:2jnFxRjrd
この言語で繰り返し(for, #each, #each_with_index, #times,...等)っていつ使うんだ

2以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:16:53.933ID:w9yD87Xl0
繰り返したいとき

3以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:27:56.543ID:xVWB51g20
mapとかfilterとかあるんだからそれ使えってこと?

4以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:29:42.541ID:xVWB51g20
Rubyならfilterじゃなくてselectか
mapとかselectを実装する時に使うんだよ

5以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:34:09.730ID:tHdD6pO5d
forとeach_with_indexは絶対に使わない

よく行われる繰り返し操作は、
map, select, reduce, each_cons, each_slice, zip等のメソッドを使えば、完全に宣言的に行える
また、ループの内部で配列の生成や要素追加のような大きなオーバーヘッドを伴う操作を行っている場合、上のメソッド方を使った方が速い

中間的な状態を保持したい場合は、繰り返しを使う
たとえば、配列の先頭要素からの和が100を超えたら〜みたいなのを書くときは、whileを使う方がいい

こういう認識

6以下、5ちゃんねるからVIPがお送りします2018/09/07(金) 18:36:50.897ID:tHdD6pO5d
あと、Enumerableをmix inしたとき、eachをオーバーライドする必要がある

■ このスレッドは過去ログ倉庫に格納されています