読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

「:?」演算子

<スポンサーリンク>

■ifを修飾子として使う

code if expression

以下の例では、
puts hoge if hoge
のように書いているが、これはhogeが定義されているときだけ、puts hogeが実行される。

if文は後に書いてあるが、先に評価される。

# coding: utf-8

hoge = "fuga"
bar = nil

puts hoge if hoge
puts bar if bar

#fugaとだけ出力される


■?:演算子って何?
「?」は、then
「:」は、elseに対応している。
?:演算子は条件分岐を簡潔に表現できる。

オープンソースとか読んでると?:がよく出てきて、最初はかなり戸惑った。

# coding: utf-8

def is_it_plural(n)
  puts "It is " + n.to_s + (n==1 ? " singular." : " plural.")
end

is_it_plural(1)

is_it_plural(2)

結果

It is 1 singular.
It is 2 plural.