#メソッド、引数、戻り値・・・わからなすぎる
とりあえず、例を見てみよう
#def メソッド名でメソッドを定義
def add(a, b)
#return 値で呼び出し元に値を返す
return a + b
#↑aとbを足した値が戻り値として呼び出し元に返る。あとはendで閉じる
end
#メソッドの呼び出し部分がそのまま戻り値に置き換わる
#変数sumに呼び出し部分add(1,3)を代入する
sum = add(1,3)
#表示してみよう
puts sum
・・・わかった?
実行結果
4
if文で使う条件式をreturnすることで、その結果として得られる真偽値(true, false)を返すことができる。
真偽値を返すメソッドにはメソッド名の末尾に「?」をつける習慣がある
まあいったん見てみよう。
#def メソッド名でメソッドを定義
def negative?(number)
#return 値(number<0)で真偽値(trueかfalse)を返す
return number<0
#endで閉じる。
end
#メソッドで定義したnumberに5を当てはめて真偽判定しよう
#確認だがあくまでも返ってくるのは真偽値(trueかfalse)だ
puts negative?(5)
実行結果は?
false
#演習
引数priceを受け取るメソッドshipping_free?を定義し、そのメソッドの中でprice >= 5000を戻り値として返す。
if文の条件式でshipping_free?メソッドを呼び出し、その際引数を3000とする。
真偽値がtrueの場合は"5000円以上のお買い上げなので送料はいただきません",
真偽値がfalseの場合は"追加で送料をいただきます"
と出力してみよう。
解説はなし!やってみよう。
def shipping_free?(price)
return price >= 5000
end
if shipping_free?(3000)
puts "5000円以上のお買い上げなので送料はいただきません"
else
puts "追加で送料をいただきます"
end