2.10 ruby - 基本的な文法 - 本当にすべてオブジェクト
- 2.10.1 本当にすべてオブジェクト
- 2.10.2 ハッシュの値にハッシュを設定
2.10.1 本当にすべてオブジェクト
前の方で、スカラ変数的なという言葉を使っていますが、ruby では、変数はすべてオブジェクトということで、変数スコープはあっても型はないのだ。
つまり、下記のソースを書いて
#!/usr/bin/env ruby
value = 1
puts("#{value}")
value = Array[ 1, 2 ]
puts("#{value}")
value = Hash[ :foo => 1, :bar => 2 ]
puts("#{value}")
実行すると以下のようになります。
> ./ソースファイル名.rb
1
[1, 2]
{:foo=>1, :bar=>2}
2.10.2 ハッシュの値にハッシュを設定
ハッシュの値にハッシュを設定することもできます。
下記のソースを書いて
#!/usr/bin/env ruby
hash = { :foo => 'bar', :hoge => 'fuga' }
hash2 = { :hash => hash }
hash2.each { | key, value |
puts("key = #{key} value = #{value}")
}
実行すると以下のようになります。
> ./ソースファイル名.rb
key = hash value = {:foo=>"bar", :hoge=>"fuga"}
うむ、便利。
さすがに perl ではこれは簡単にはできないからな。
|
|