ํ”ผ๋“œ๋กœ ๋Œ์•„๊ฐ€๊ธฐ
Swiftโ€”Checking Multiple Conditions with else, else if, && and || ๐Ÿ”€
Dev.toDev.to
Frontend

Swift ์กฐ๊ฑด๋ฌธ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•œ ์—ฐ์‚ฐ ๋‚ญ๋น„ ์ œ๊ฑฐ ๋ฐ ๊ฐ€๋…์„ฑ ํ™•๋ณด

Swiftโ€”Checking Multiple Conditions with else, else if, && and || ๐Ÿ”€

Gamya2026๋…„ 6์›” 7์ผ6๋ถ„beginner

Context

๋…๋ฆฝ์ ์ธ ๋‹ค์ค‘ if ๋ฌธ ์‚ฌ์šฉ์œผ๋กœ ์ธํ•œ ์ค‘๋ณต ์กฐ๊ฑด ๊ฒ€์‚ฌ ๋ฐ ์—ฐ์‚ฐ ๋ฆฌ์†Œ์Šค ๋‚ญ๋น„ ๋ฐœ์ƒ. ๋ณตํ•ฉ ์กฐ๊ฑด ์‹์˜ ๋ชจํ˜ธํ•œ ์šฐ์„ ์ˆœ์œ„๋กœ ์ธํ•œ ๋Ÿฐํƒ€์ž„ ๋กœ์ง ์˜ค๋ฅ˜ ๊ฐ€๋Šฅ์„ฑ ์กด์žฌ.

Technical Solution

  • else ๋ฐ else if ์ฒด์ด๋‹์„ ํ†ตํ•œ ์กฐ๊ฑด ๊ฒ€์‚ฌ ํšŸ์ˆ˜ ์ตœ์†Œํ™” ๊ตฌ์กฐ ์„ค๊ณ„
  • ์ƒ์œ„ ์กฐ๊ฑด ์ถฉ์กฑ ์‹œ ํ•˜์œ„ ๊ฒ€์‚ฌ๋ฅผ ์ฆ‰์‹œ ์ค‘๋‹จํ•˜๋Š” Short-circuit ํ‰๊ฐ€ ๋ฐฉ์‹ ์ ์šฉ
  • &&(AND)์™€ ||(OR) ์—ฐ์‚ฐ์ž๋ฅผ ํ™œ์šฉํ•œ ๋‹ค์ค‘ ์กฐ๊ฑด์˜ ๋…ผ๋ฆฌ์  ๊ฒฐํ•ฉ
  • Parentheses๋ฅผ ํ†ตํ•œ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž ์šฐ์„ ์ˆœ์œ„ ๋ช…์‹œ๋กœ ์˜๋„ํ•œ ์‹คํ–‰ ํ๋ฆ„ ๋ณด์žฅ
  • Enum ํƒ€์ž…๊ณผ ์กฐ๊ฑด๋ฌธ์„ ๊ฒฐํ•ฉํ•˜์—ฌ ์ƒํƒœ ๊ธฐ๋ฐ˜์˜ ํƒ€์ž… ์•ˆ์ „ํ•œ ๋ถ„๊ธฐ ์ฒ˜๋ฆฌ ๊ตฌํ˜„

- ์ƒํ˜ธ ๋ฐฐํƒ€์ ์ธ ์กฐ๊ฑด์˜ ๊ฒฝ์šฐ if-if ๊ตฌ์กฐ ๋Œ€์‹  if-else if ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ์—ฐ์‚ฐ ์ œ๊ฑฐ - &&์™€ ||๊ฐ€ ํ˜ผ์šฉ๋œ ๋ณต์žกํ•œ ์กฐ๊ฑด์‹์—๋Š” ๋ฐ˜๋“œ์‹œ ๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋…ผ๋ฆฌ์  ๋ชจํ˜ธ์„ฑ ์ œ๊ฑฐ - ๋‹ค์ค‘ ์ƒํƒœ ๋ถ„๊ธฐ ์‹œ Enum์„ ํ™œ์šฉํ•˜์—ฌ ๊ฐ€๋…์„ฑ๊ณผ ํƒ€์ž… ์•ˆ์ •์„ฑ ํ™•๋ณด

์›๋ฌธ ์ฝ๊ธฐ