2009年11月10日23:49 Ruby 階層の深いHashを作成するときに知っておいたら便利なこと Ruby で階層の深いハッシュ(ハッシュの値がさらにハッシュとか)を作成するのって面倒です。何が面倒って毎回宣言しないといけないんですよー。まぁ他の言語やってた人なら当たり前なのかもしれませんが、Perl 出身の僕としては大変メンドクサイわけです。 例えばこのようなデータ構造を考えてみます。 #!/usr/bin/ruby hash = {} hash["hoge"] = 1 p hash # {"hoge"=>1} hash["foo"]["bar"] = 1 p hash # undefined method `[]=' for nil:NilClass (NoMethodError) 最初に hash = {} と宣言しているので hash["hoge"] = 1 の部分は問題なく