[Go] ์ œ์–ด๋ฌธ

if-else๋ฌธ
C์™€ ๊ฑฐ์˜ ๋™์ผํ•œ๋ฐ, ์†Œ๊ด„ํ˜ธ๊ฐ€ ์—†๋‹ค๋Š” ์ ์ด ๋‹ค๋ฅด๋‹ค. image

image ์ค‘๊ด„ํ˜ธ๋ฅผ ๊ผญ ์•ž์—๋‹ค ๋ถ™์—ฌ์•ผํ•˜๊ณ , else๋„ ๋ฐ”๋กœ ์ „์˜ if ๊ตฌ๋ฌธ์ด ๋๋‚˜๋Š” ๊ณณ์—๋‹ค ์ด์–ด๋ถ™์—ฌ์•ผํ•œ๋‹ค.
๊ฑฐ์ง€๊ฐ™๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์„ ํƒ์  ๊ตฌ๋ฌธ์ด๋ผ๋Š” if ํ™•์žฅ๊ตฌ๋ฌธ์ด ์žˆ๋‹ค.
if****๊ตฌ๋ฌธ; ๋…ผ๋ฆฌ์‹ {
ย ย ย  ...
}
์™€ ๊ฐ™์ด ์“ฐ๋ฉด ์ € ๊ตฌ๋ฌธ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋…ผ๋ฆฌ์‹์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.
์ด ๊ตฌ๋ฌธ์—์„œ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๊ฒฝ์šฐ, ๊ทธ ๋ณ€์ˆ˜๋Š” if ์Šค์ฝ”ํ”„ ๋‚ด์—์„œ๋งŒ ์œ ํšจํ•˜๋‹ค. image

image ์ด๊ฑด if๋ฟ๋งŒ ์•„๋‹ˆ๋ผ switch๋ฌธ ๋“ฑ์—์„œ๋„ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.


switch-case๋ฌธ
๋ง์€ ์Šค์œ„์น˜์ง€๋งŒ ํŒจํ„ด๋งค์นญ๊ตฌ๋ฌธ์ด๋‹ค.
๋ชจ๋“  ํ‘œํ˜„์‹์„ case๋กœ ๊ฑธ์ˆ˜ ์žˆ๊ณ  break ์—†์ด๋„ ์ž๋™ํƒˆ์ถœํ•˜๋ฉฐ, ํƒ€์ž…์œผ๋กœ ๋ถ„๊ธฐ๋ฅผ ๊ฑธ์ˆ˜๋„ ์žˆ๋‹ค.


image

image ์ž˜ ๋ˆ๋‹ค.

๋งŒ์•ฝ ์ „ํ†ต์ ์ธ C ์Šค์œ„์น˜์ฒ˜๋Ÿผ ํƒˆ์ถœํ•˜์ง€ ์•Š๊ณ  ์Šฅ์Šฅ ๋‚ด๋ ค๊ฐ€๊ฒŒ ํ•˜๋ ค๋ฉด fallthrough๋ฅผ ๋ถ™์ด๋ฉด ๋œ๋‹ค. image

image ๊ตณ์ด ์“ธ์ผ์€ ์—†์„๊ฒƒ๊ฐ™๋‹ค๋งŒ.

case์— ์ฝค๋งˆ๋ฅผ ๋„ฃ์–ด์„œ ์—ฌ๋Ÿฌ๊ฐ’์„ ๋Œ€์‘์‹œํ‚ฌ ์ˆ˜๋„ ์žˆ๋‹ค. image

image

switch์— ์ธ์ž๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•˜๋ฉด case์— ์กฐ๊ฑด์‹์„ ๋„ฃ์„ ์ˆ˜๋„ ์žˆ๋‹ค. if-else์™€ ์‚ฌ์‹ค์ƒ ๋™์ผํ•˜๋‹ค. image

image


ํƒ€์ž… ์Šค์œ„์น˜๋‹ค. image

image interface{}๋กœ ์บ์ŠคํŒ…ํ•ด๋†จ๋Š”๋ฐ, ์ €๊ฑฐ ์—†์œผ๋ฉด ์•ˆ๋ˆ๋‹ค. ์ž์„ธํ•œ๊ฑด ๋‚˜์ค‘์—