Ruby ハッシュの長さを取得する

Rubyで、lengthを使用して、ハッシュの長さを取得するサンプルコードを記述してます。rubyのバージョンは2.7.2を使用してます。
環境
- OS windows10 pro 64bit
- ruby 2.7.2p137
length使い方
lengthを使用すれば、ハッシュの長さを取得することが可能です。
hash.length
以下は、ハッシュの長さを取得するサンプルコードとなります。
h = {'key1' => 1, 'key2' => 2}
p h.length
# 2
h = {'key1' => 1, 'key2' => 2, 'key3' => 3}
p h.length
# 3
sizeを使用しても、結果は同じです。
h = {'key1' => 1, 'key2' => 2}
p h.size
# 2
h = {'key1' => 1, 'key2' => 2, 'key3' => 3}
p h.size
# 3
countも使用できますが、パフォーマンスは一番悪くなります。
h = {'key1' => 1, 'key2' => 2}
p h.count
# 2
h = {'key1' => 1, 'key2' => 2, 'key3' => 3}
p h.count
# 3
lengthとsizeとcountを1000万回計測した結果
user system total real
#length 0.453000 0.000000 0.453000 ( 0.460591)
#size 0.547000 0.000000 0.547000 ( 0.551066)
#count 3.437000 0.000000 3.437000 ( 3.435665)
ソースコード
require 'benchmark'
# 繰り返し回数
i = 10000000
# ハッシュを用意
h = {'key1' => 1, 'key2' => 2, 'key3' => 3}
# 10は、reportラベルに使用する桁数
Benchmark.bm 10 do |r|
r.report '#length' do
i.times do
h.length
end
end
r.report '#size' do
i.times do
h.size
end
end
r.report '#count' do
i.times do
h.count
end
end
end
-
前の記事
「reCAPTCHA」認証を利用して迷惑メールを防ぐ 2021.03.20
-
次の記事
UVdesk エラー「The stream or file “/var/log/dev.log” could not be opened: failed to open stream: Permission denied」が発生 2021.03.21
コメントを書く