Rubyを学ぶ 2日目
Ruby を学ぶ 2 日目
文字列の比較
'ruby' == 'ruby' #=> true 'ruby' == 'Ruby' #=> false 'ruby' != 'false' #=> true 'ruby' != 'ruby' #=> false
<, <=, >, >=を使って大小関係を比較することが出来る。
'a' < 'b' #=> true 'a' < 'A' #=> false 'a' > 'A' #=> true 'abc' > 'def' #=> true 'abc' < 'ab' #=> false 'abc' < 'abcd' #=> true 'あいうえお' < 'かきくけこ' #=> true
数値
# 正の整数 10 # 小数 1.5 # 負の整数 -3 # 負の小数 -4.75
数値には_
を含めることが出来ます。_
は無視されるので、大きな数の区切り文字として使うと便利。
1_000_000_000 #=> 1000000000
10 + 20 #=> 30 100 - 25 #=> 75 12 * 5 #=> 60 20 / 5 #=> 4
変数の手間に-
を付けると、数値の正と負を反転できます。
n = 1 -n #=> -1
整数同士の割り算は整数になる点に注意してください。小数点以下は切り捨てられます。
1 / 2 #=> 0
小数点以下の値が必要な場合は。どちらかの値に小数点の.0 を付けます。
1.0 / 2 #=> 0.5 1 / 2.0 #=> 0.5
変数に整数が入っている場合は、to_fメソッド
を呼ぶことで整数から小数に変更することができます。
n = 1 n.to_f #=> 1.0 n.to_f / 2 #=> 0.5
%
は割り算の余りを求める演算子です。
8 % 3 #=> 2
**
はべき乗を求める演算子です。
2 ** 3 #=> 8
変数に格納された数値の増減
n = 1 # ++は構文として無効 # n++ # nを1増やす n += 1 # nを1減らす n -= 1
同様に*=, /=, **=
も使える。
真偽値
# trueそのもの true # すべての数値 1 0 -1 # すべての文字列 'true' 'false' ''
nil も偽になる。実際のプログラミングではオブジェクトが nil かどうかで条件分岐させる機会が多いので、意外と便利。
データがあればそのデータを、データがなければ nil を返す find_data という架空のメソッドがあったとします。 データのある/なしで処理を変えたい場合、素直に nil かどうかをチェックすると次のようなコードになる。
data = find_data if data != nil 'データがあります' else 'データはありません' end
Ruby の場合、false と nil 以外はすべて真なので、次のようなシンプルに書けます。
data = find_data if data != nil 'データがあります' else 'データはありません' end