ruby-jp1のSlackで話していて面白かったのでまとめ。 Slack上の発言 RubyのString#gsub!はString#gsubの破壊的バージョンで、置換結果でレシーバを上書きする。 当然gsub!の方が新しいStringオブジェクトを生成しないので速いと思っていたら、どうやらそんなことはない(しかもgsub!のほうが微妙に遅い)ようなので盛り上がった。 ベンチマーク ベンチマークは次の通り。mameさんが出してくれたサンプルコードをそのままコピペしている。 ss = "abcde" * 100 t = Time.now 100000.times do s = ss s = s.gsub("a", "A").gsub("b", "B").gsub("c", "C").gsub("d", "D").gsub("e", "E") end p Time.now - t #=> 4.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く