8
1
章
Ruby
ひとめぐり
>>
ac.add(10, 2)
=> 12
1.6
その他の機能
ここでは、本書のサンプルコードで必要になるRubyのその他の機能について説明します。
1.6.1
ローカル変数と代入
これまで見てきたように、Rubyでは値を代入することがローカル変数の宣言になります。
>>
greeting = 'hello'
=> "hello"
>>
greeting
=> "hello"
配列を使うことで、複数の変数に値を多重代入(parallel assignment)することもできます。
>>
width, height, depth = [1000, 2250, 250]
=> [1000, 2250, 250]
>>
height
=> 2250
1.6.2
文字列の式展開
文字列はシングルクォートもしくはダブルクォートで囲みます。ダブルクォートで囲まれた文字列の
場合、Rubyは自動的に式展開(interpolation)を実行し、
#{
式
}
をその結果に置き換えます。
>>
"hello #{'dlrow'.reverse}"
=> "hello world"
展開される式が文字列ではなくオブジェクトを返す場合、そのオブジェクトには自動的に
to_s
メッ
セージが送られ、そこで使える文字列を返すことが期待されます。これをうまく利用することで、展開
されるオブジェクトがどのように見えるかをコントロールできます。
>>
o = Object.new
=> #<Object>
>>
def o.to_s