rubyでは、変数に型は無い。
しかし、変数に格納されているデータには型がある。
もっとも単純なデータは「数値」「文字」「文字列」である。
数値定数 | 表綺麗 |
---|---|
整数 | 123 |
整数(符号付き) | -123 |
整数(下線の区切り付き) | 1_987_123 |
8進数 | 0377 |
16進数 | 0xABCD |
浮動小数点 | 3.14159 |
浮動小数点(指数表記) | 1.02e23 |
Rubyの文字定数は、実際にはASCIIコードにしたがって整数として評価されます。
このため、対応する整数定数と入れ替えが可能となっています。
次に文字定数の例を示します。
文字定数 | 表記例 |
---|---|
小文字x(120) | ?x |
改行 | ?\n |
バックスラッシュ | ?\\ |
Ctrl+D | ?\Cd |
Ctrl+x | ?\C-x |
Meta+x(xと0x80の論理和) | ?\M-x |
Meta+Ctrl+x | ?\M-\C-x |
これらの形式は、次に示すように文字列の中に埋め込むことが可能です。
Rubyには、文字列を表すための表記が豊富に用意されており、状況に応じて使い分ける事ができます。
通常、Rubyの文字列定数はC言語と同様にダブルクオーテーションで囲みます。
「エスケープしたも事例数」をRubyの文字列中に埋め込んで、次の様に制御文字等を表現出来ます。
文字列利用の例
"This is a pen!.\n" "Hello ruby world!.\n" "Here are three tabs \t\t\t and the more text." "The total is #{a+b+c}" "A backslash (\\) must be doubled."
数式や変数を埋め込む為には#{}を利用して埋め込みます。
文字列をシングルクオーテーションで囲んだ場合は、式の展開が行われず、\\と\'以外のバックスラッシュ記法は解釈されません。
つまり、ダブルクオーテーションのように、文字列を解釈させずそのまま利用したい場合、シングルクオーテーションで囲んだ文字列を利用できる。
'The notation #{delphi} will not be expanded.' 'We can embed the \\ (backslash) character' 'or the \' (single quote) character.'