三項演算子

条件分岐をする際に三項演算子という式を使って分岐をさせることができる。

書式

条件 ? true : false

if分で条件分岐させた天気のプログラムを三項演算子で書き直すとこのようになる。

var wether: String = "☀️"
wether == "☀️" ? print("帽子をかぶる"):print("🌂を持っていく")

三項演算子の利点は単純な条件式をif文で書くと冗長だと感じてしまうことがあります。そんな時に使うとスッキリして可読性が上がるかもしれません。

しかし、使い道を誤るとコードが読みにくくなってしまうので注意が必要です。

悪い例

以前に書いた天気の条件式を使います。

var wether: String = "晴れ"

if wether == "☀️" {
	print("🧢をかぶる")
}else if wether == "☔️"{
	print("🌂を持っていく")
}else if wether == "⛄️"{
	print("👢をはく")
}else if wether == "☁️"{
}

else ifを含んだ条件文を三項演算子で書いてみるとこうなります。

        let wether = 🌞
        wether == "🌞" ? print("🧢をかぶる"):wether == "☔️" ? print("🌂を持っていく"):wether == "☃️" ? print("👢をはく")

行数は短いですがすごく読みにくいです。複雑な条件文を三項演算子で書くことはオススメしません。