Rubyは動的型付けのプログラミング言語なので明示的に宣言はしませんが、変数に値を代入した瞬間に下記のようなデータ型のクラスが使われているので覚えておきましょう。
Stringクラス(文字列)
文字列操作
upcaseメソッド
文字列を全て大文字にします。その場で文字列を生成するだけで元の変数の値は変わりません。
upcase!メソッド
文字列を全て大文字にします。元の変数の文字列を大文字に書き換えます。(破壊的編集)
downcaseメソッド
文字列を全て小文字にします。その場で文字列を生成するだけで元の変数の値は変わりません。
slice(開始位置、終了位置)
文字列から値を切り取ります。
sizeメソッド
文字数を取得できる。
データ型変換
to_iメソッド
String型をInteger型に変換する。
to_fメソッド
String型をfloat型に変換する。
Numeric
数値クラス
Integer
整数クラス
整数.zero?
整数が0であるか判定します。0であればtrueを返します。
整数.even?
整数が偶数であるか判定します。偶数であればtrueを返します。
整数.odd?
整数が奇数であるか判定します。奇数であればtrueを返します。
to_sメソッド
「オブジェクト」を文字列として返します。(Javaで言うところの「toStringメソッド」ですね。)
例えば、下記のようなプログラムを用意します。
1 2 3 4 5 |
#文字列 puts 1.to_s #nil puts nil.to_s |
実行結果
Float
浮動小数点数クラス(小数点以下を扱える)
roundメソッド
四捨五入をします。
1 |
1.3.round # 1 |
ceilメソッド
切り上げを行う。
1 |
1.3.ceil # 2 |
floorメソッド
切り捨てを行う。
1 |
1.3.floor # 1 |
Floatの注意点
四則演算すると丸め誤差が発生する可能性があります。BigDecimalなどのライブラリを使うようにしましょう。(Floatのように組み込みライブラリではないのでrequireが必要になります。)
Enumerator
Integerクラスにtimesメソッドを使うことで生成できる。指定回数を繰り返す場合とかに使ったりする。
1 2 3 |
3.times do |m| puts m # 1、2、3 end |
True/Falseクラス
主に条件分岐に使用されます。
データ型のチェック方法
1 |
対象.class |
対象には変数名を指定しても良いですし、数値とか文字列をそのまま指定しても構いません。
この記事へのコメントはありません。