[] と Array.new と {} と Hash.new の違いをもっと知りたいと思っていました
私はそれで同じベンチマークを実行しましたが、速記が勝者のようです
require 'benchmark'
many = 500000
Benchmark.bm do |b|
b.report("[] \t") {many.times { [].object_id }}
b.report("Array.new \t") { many.times { Array.new.object_id }}
b.report("{} \t") {many.times { {}.object_id }}
b.report("Hash.new\t") { many.times { Hash.new.object_id }}
end
user system total real
[] 0.080000 0.000000 0.080000 ( 0.079287)
Array.new 0.180000 0.000000 0.180000 ( 0.177105)
{} 0.080000 0.000000 0.080000 ( 0.079467)
Hash.new 0.260000 0.000000 0.260000 ( 0.264796)
私は個人的に [] と {} の省略形を使用するのが好きです。コードはとてもクールで読みやすいです。
それらの違いは何ですか?それをより良くする舞台裏で何が起こっているのか、そしていつどれを使うべきかについての提案はありますか?
このリンクを見つけましたが、より多くの情報を取得しようとしていました。
乾杯。