19

次のコードを単純化する方法はありますか?

filenames はファイル名 (文字列) のリストです。例: ["foo.txt", "bar.c", "baz.yaml"]

filenames.map { |f| File.size(f) }

「File.size」をprocまたはブロックに変える方法はありますか? 既存のオブジェクトのメソッドについては、&:method. モジュールレベルのメソッドに類似したものはありますか?

4

3 に答える 3

31

Object#method(method_name)を使用できます:

filenames.map(&File.method(:size))
于 2013-08-15T12:35:21.243 に答える