我很想知道 [] 和 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)
我个人喜欢使用简写的 [] 和 {} ,代码看起来很酷且可读。
任何其他指针它们之间有什么区别?幕后发生了什么使它变得更好,以及何时使用哪个建议?
我找到了这个链接,但希望获得更多信息。
干杯。