- if-else
- switch
- if-else ๊ตฌ๋ฌธ
- if-else ๊ตฌ๋ฌธ์ ๊ธฐ๋ณธ ํํ
- if๋ง ๋จ๋ ์ผ๋ก ์ฌ์ฉํด๋๋๊ณ , else, else if ์ ์กฐํฉํด์ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
- if ๋ค์ ์กฐ๊ฑด ๊ฐ์๋ Bool ํ์ ์ ๊ฐ๋ง ์์นํด์ผ ํ๋ค.
- ์กฐ๊ฑด์ ๊ฐ์ธ๋ ์๊ดํธ๋ ์ ํ์ฌํญ์ด๋ค.
let someInteger = 100
if someInteger < 100 {
print("100 ๋ฏธ๋ง")
} else if someInteger > 100 {
print("100 ์ด๊ณผ")
} else {
print("100")
} // 100
// ์ค์ํํธ์ ์กฐ๊ฑด์๋ ํญ์ Bool ํ์
์ด ๋ค์ด์์ผ ํ๋ค.
// someInteger๋ Bool ํ์
์ด ์๋ Int ํ์
์ด๊ธฐ ๋๋ฌธ์ ์ปดํ์ผ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค.
//if someInteger { } (X)
- switch ๊ตฌ๋ฌธ
-
์ค์ํํธ์ switch ๊ตฌ๋ฌธ์ ๋ค๋ฅธ ์ธ์ด์ ๋นํด ๊ต์ฅํ ๊ฐ๋ ฅํ ํ์ ๋ฐํํ๋ค.
-
๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ์ฉํ๋ ์ ์ํ์ ์ ๊ฐ๋ง ๋น๊ตํ๋ ๊ฒ์ด ์๋๋ผ ๋๋ถ๋ถ์ ์ค์ํํธ ๊ธฐ๋ณธ ํ์ ์ ์ง์ํ๋ฉฐ, ๋ค์ํ ํจํด๊ณผ ์์ฉ์ด ๊ฐ๋ฅํ๋ค.
- ์ค์ํํธ์ ๋ค์ํ ํจํด์ Swift Programming Language Reference์ ํจํด ์์ ํ์ธํ ์ ์๋ค.
- ๊ฐ๊ฐ์ case ๋ด๋ถ์๋ ์คํ๊ฐ๋ฅํ ์ฝ๋๊ฐ ๋ฐ๋์ ์์นํด์ผ ํ๋ค.
- ๋งค์ฐ ํ์ ์ ์ธ ๊ฐ(ex. enum์ case ๋ฑ)์ด ๋น๊ต๊ฐ์ด ์๋ ํ default ๊ตฌ๋ฌธ์ ๋ฐ๋์ ์์ฑํด์ผ ํ๋ค.
- ๋ช ์์ break๋ฅผ ํ์ง ์์๋ ์๋์ผ๋ก case๋ง๋ค break ๋๋ค.
- fallthrough ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ break๋ฅผ ๋ฌด์ํ ์ ์๋ค.
- ์ผํ(,)๋ฅผ ์ฌ์ฉํ์ฌ ํ๋์ case์ ์ฌ๋ฌ ํจํด์ ๋ช ์ํ ์ ์๋ค. (or์ ์ญํ )
// ๋ฒ์ ์ฐ์ฐ์๋ฅผ ํ์ฉํ๋ฉด ๋์ฑ ์ฝ๊ณ ์ ์ฉํ๋ค
switch someInteger {
case 0:
print("zero")
case 1..<100:
print("1~99")
case 100:
print("100")
case 101...Int.max:
print("over 100")
default:
print("unknown")
} // 100
// ์ ์ ์ธ์ ๋๋ถ๋ถ์ ๊ธฐ๋ณธ ํ์
์ ์ฌ์ฉํ ์ ์๋ค
switch "kdgt" {
case "jake":
print("jake")
case "mina":
print("mina")
case "kdgt":
print("kdgt!!")
default:
print("unknown")
} // kdgt!!