- Published on
Rubyを学ぶ2日目
- Authors
- Name
- よしかわ たいき
- @yoshikawataiki
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