如果仅像某些文章说的前者的效率不如后者,那要前者做什么?
认证0级讲师
通常の状況では、each を使用してみてください: each:
each
1.upto(10).each { |i| puts i } puts i # NameError: i is undefined
而用for リーリー
for
違いはないようですが、通常、Ruby では 1 つのことを実行するのに複数の方法があります
各 do の方が効率的です。一部のプログラミング標準では、一般的に for in の使用を推奨していません。
これはプログラミング スタイルの問題です。 each ループは関数型スタイルであり、for ループは命令型スタイルです。 それぞれは実際には反復可能なオブジェクトのメソッドであり、パラメーターとしてブロックを受け入れます forは文法で実装されたループ構造です
通常の状況では、
each
を使用してみてください:each
:而用
for
リーリーfor
を使用する場合: 🎜 リーリー違いはないようですが、通常、Ruby では 1 つのことを実行するのに複数の方法があります
各 do の方が効率的です。一部のプログラミング標準では、一般的に for in の使用を推奨していません。
これはプログラミング スタイルの問題です。 each ループは関数型スタイルであり、for ループは命令型スタイルです。 それぞれは実際には反復可能なオブジェクトのメソッドであり、パラメーターとしてブロックを受け入れます
forは文法で実装されたループ構造です