์ด๊ฑฐํ
์ด๊ฑฐํ์ด๋ ์ฝ๊ฒ ๋งํด, ๋ฌธ์์ด๊ณผ ์ ์๊ฐ ๋ฑ ์
๋ ฅ๋ฐ์์ผ ํ ์ ๋ณด๋ฅผ ์ง์ ์
๋ ฅํ์ง ์๊ณ ์ ํํ ์ ์๊ฒ ํด์ฃผ๋ ํํ์
๋๋ค. ์ด๊ฑฐํ์ ํน์ง ์ค ๊ธฐ์ตํด์ผ ํ๋ ๊ฒ์, ์ด๊ฑฐํ์ ๋ฐฐ์ด๊ณผ ์งํฉ์ฒ๋ผ ์ ๋ณด์ ์ญ์ ๋ ๋ณ๊ฒฝ์ด ๋ถ๊ฐ๋ฅํ๋ค๋ ๊ฒ์
๋๋ค. ๋ฐ๋ผ์ ๊ตฌ๋ฌธ ์์ฒด๋ฅผ ์์ ํ์ง ์๋ ์ด์, ์ค์ฝํ ๋ฐ์์ ์ผ์ด์ค๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ด์ฒ๋ผ ์ด๊ฑฐํ์ Switch ๊ตฌ๋ฌธ๊ณผ ํจ๊ป ์ฐ์ด๊ธฐ๋ ํฉ๋๋ค. ์ฐ์์๋ if-else ๊ตฌ๋ฌธ๊ณผ ๋น์ทํ์ง๋ง ์ข ๋ ์ฝ๊ณ ์ง๊ด์ ์ผ๋ก ํํํ ์ ์์ต๋๋ค. Switch ๊ตฌ๋ฉด์์ ์ด๊ฑฐํ ๊ฐ์ ๋งค์นญํ ๋์๋ ๋ฐ๋์ ์ด๊ฑฐํ์ ๋ชจ๋ ๊ฒฝ์ฐ๋ฅผ ํฌํจํด์ผ ํฉ๋๋ค. ํ๋๋ผ๋ ๋น ์ ธ์๋ค๋ฉด, ์ปดํ์ผ์ด ๋์ง ์๊ธฐ ๋๋ฌธ์
๋๋ค. ๋ฐ๋ผ์ ์ด๊ฑฐํ์ ๋ชจ๋ ๊ฐ์ ํฌํจํ๊ธฐ ์ด๋ ต๋ค๋ฉด, default๋ก ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ์ด์ผ๋ง ํฉ๋๋ค.
* ์์๊ฐ (Raw Value)
์ด์ฒ๋ผ ๊ฐ๊ฐ์ case ์ raw vlue ๋ฅผ ์ง์ ํด์ค ์ ์์ต๋๋ค. raw ๊ฐ์ ์ด๊ฑฐํ ์ ์ธ์์ ์ ์ผํ ๊ฐ์ด๊ธฐ ๋๋ฌธ์ ์ค๋ณต๋์ด์๋ ์๋ฉ๋๋ค.
ํจ์์ ๋ฐํ๊ฐ
1) ๋ฐํ ํ์
์ด ์๋ ํจ์
-> ๋ฅผ ์ด์ฉํด ๋ฐํํ์
์ ์ง์ ํ ํจ์์
๋๋ค.
2) ๋ฐํํ์
์ด ์๋ ํจ์
์ค์ ๋ก๋ -> Void ๋ผ๊ณ ์ ํ์๋ ๋ถ๋ถ์ ์๋ตํ์ง๋ง, ์๋ฐํ ๋งํ๋ฉด ๋ฐํํ์
์ด ์๋ ํจ์์
๋๋ค. Void ๋ () ๋ฅผ ์ฌ์ฉํ ๋น ํํ์
๋๋ค.
Raw Strings
var onlineService = "Zoom"
var answer = #"์๋
ํ์ธ์.\#n์ค๋ ์์
์ "\#(onlineService)"์์ ์งํํฉ๋๋ค."#
var greeting2 = #"์๋
ํ์ธ์. \#n์ค๋ ์์
์ "Zoom"์์ ์งํํฉ๋๋ค."#
Raw Strings ๋ ๋ฌธ์์ด ์์ " ๋ \ ๋ฅผ ์ฌ์ฉํ ๋, \๋ฅผ ์ถ๊ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ ๋ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด Swift5๋ถํฐ ์ง์๋๋ ๊ธฐ๋ฅ์ ๋๋ค. Raw Strings ์์์๋ ๋ชจ๋ ๊ฒฝ๊ณ๋ฌธ์์ ์ด์ค์ผ์ดํ ๋ฌธ์๊ฐ ํน์ ์ญํ ์ ํ์ง ์๊ณ ๊ทธ๋๋ก ์ถ๋ ฅ๋ฉ๋๋ค. ๊ทธ๋ฌ๊ธฐ ๋๋ฌธ์ # ~ # ์์์ ์ค๋ฐ๊ฟ์ ํด์ฃผ๋ ๋ฌธ์๋ฅผ ๋ฃ๊ธฐ ์ํด์ \#n ์ ์ฌ์ฉํด์ผ ํ๊ณ ๋ณ์๋ช ์์๋ \# ๋ฅผ ๋ถ์ฌ์ฃผ์ด์ผ ํฉ๋๋ค.
'iOS > TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
22.07.18 - 19 ใ ฃ Enum CaseIterable & Table View (0) | 2022.07.19 |
---|---|
22.07.13 ใ ฃ Class & Struct (0) | 2022.07.14 |
22.07.06 ใ ฃ์ฑ์ ์๋ช ์ฃผ๊ธฐ & AppDelegate vs SceneDelegate & ๋คํฌ ๋ชจ๋ & UIWindow (0) | 2022.07.06 |
22.07.05 ใ ฃ UIKit Framework (0) | 2022.07.05 |
22.07.04ใ ฃ ์ฑ์ ๊ตฌ์กฐ์ ๋์ ์๋ฆฌ & iOS ์ ํน์ง & Xcode ์ฃผ์ ๊ธฐ๋ฅ (0) | 2022.07.04 |