stringからsymbolへの変換は、to_symを使うものだと思っていたけど:"hoge"でもできる。 んでどっちが早いのか調べてみた。 require "benchmark" n = 1_000_000 hash = { hoge: "" } Benchmark.bm(8) do |x| 3.times do x.report("to_sym :") { n.times{hash["hoge".to_sym]} } x.report("colon :") { n.times{hash[:"hoge"]} } end end 結果 user system total real to_sym : 1.090000 0.000000 1.090000 ( 1.100188) colon : 0.340000 0.000000 0.340000 ( 0.344089) to_sym : 1.