忍者ブログ

(´゚д゚`)ンマッ!!

Ruby,JavaScriptについての備忘録として書きます。自分用です。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

Rubyのifとcaseでは、どちらが速いか

Rubyのifとcase、どちらの処理が速いのかベンチマークを測定してみた。
標準でbenchmarkというライブラリがあるが、どうも使いにくいので簡単にやります。

2通りの結果しかない場合は、if、elseを使えば良いと思うので、
3通りに条件を分岐するという前提でやってみます。

a="d"
n=1000000

st=Time.now
n.times{
	if a=="a"
	elsif a=="b"
	elsif a=="c"
	else end
}
puts "if Times: #{Time.now-st}s"

st=Time.now
n.times{
	case a
	when "a"
	when "b"
	when "c"
	else
	end
}
puts "case Times: #{Time.now-st}s"
100万回回してみました。
結果は、
if Times: 2.171875s
case Times: 2.515625s

ifの==の方が少しだけ速いようですね。

結論、そんなに差はないけどどちらかというとifの方が速い

拍手[1回]

PR

Comment

お名前
タイトル
E-MAIL
URL
コメント
パスワード

Trackback

この記事にトラックバックする

Copyright © (´゚д゚`)ンマッ!! : All rights reserved

TemplateDesign by KARMA7

忍者ブログ [PR]

管理人限定

プロフィール

HN:
starlit
性別:
男性
自己紹介:
Ruby,JavaScriptでWebサービスとか作ったりしています。
こんなん作れば?とかもっとこうすれば?とかもあれば言ってください。

一緒になんか作ろうぜ!とか言う人は
是非メールなりなんなり送って下さい!

カレンダー

02 2024/03 04
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

ブログ内検索

最新CM

カウンター