Cherry本勉強中 8月22日 Part2
真偽値と条件分岐
Rubyの真偽値
- falseまたはnilであれば偽
- 上記以外は全てtrue
注意点 falseは勿論ですが、nilも偽に入ることを頭に入れておく
他の言語だとnilは偽に入らないらしい
どう違うのか
例えば、データがあるかないかの確認をする場合
他の言語だとif文を使用して、nilかそうでないかを条件分岐する
Rubyだとデータがtrueかtrueじゃないかを表す
data = "test_data" if data != nil puts "データあります" else puts "データありません" end #上下どちらも"データあります"がコンソールに表示される data = "test_data" if data puts "データあります" else puts "データありません" end
つまり、nilかどうか確認しなくても、trueを確認できる
論理演算子
論理演算子とはプログラミング言語などに用意された、論理演算を表す記号や符号などのこと。
真(true)と偽(false)の二値からなる真偽値(真理値/ブール値)に対して演算を行うことができる
論理演算子を使用することで、複数の条件を1つにまとめることができる && => かつ || => または
ちなみに&&と||の場合、&&の方が優先順位が高いそうです 私全く知りませんでした(笑)
- おまけ !演算子を使うと真偽が逆になる ()に!を使用すると()の中の真偽も逆になります
t1 = true t2 = true f1 = false f2 = false !(t1 && f1) # ture
if文
if文を使って下記のような代入ができることを初めて知ったので、記載したいと思います。
country = "italy" greeting = if country == "japan" "こんにちは" elsif country == "us" "Hello" elsif country == "italy" "ciao" end puts greeting
参考 「プロを目指す人のためのRuby入門」