[Rust] ํŒจํ„ด๋งค์นญ match

match๋Š” rust์—์„œ ํƒ€ ์–ธ์–ด์˜ swtich์— ํ•ด๋‹นํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋” ์œ ์—ฐํ•˜๊ณ  ์“ฐ์ž„์ƒˆ๊ฐ€ ๋งŽ๋‹ค.

c๋‚˜ ์ž๋ฐ”๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” case์˜ ๋Œ€์ƒ์œผ๋กœ ๊ธฐ๋ณธ ์ •์ˆ˜ํ˜•์ด๋‚˜ ์—ด๊ฑฐํ˜•๋งŒ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฐ ๋ฐ˜ํ•ด match๋Š” ๋ชจ๋“  ํƒ€์ž…์„ ๋ฐ›์„ ์ˆ˜๊ฐ€ ์žˆ๋‹ค.

์ผ๋‹จ ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์šฉ๋ฒ•์€ ์ด๋ ‡๋‹ค.
match ์ „๋‹ฌ๊ฐ’
{
์ผ€์ด์Šค => ... ,
์ผ€์ด์Šค2 => ... ,
...
}

๊ทธ๋ ‡๋‹ค.

๊ทธ๋ฆฌ๊ณ  rust์—๋Š” ํ•จ์ˆ˜ ์˜ค๋ฒ„๋กœ๋”ฉ์ด ์—†๋‹ค. ์–ธ์–ด์˜ ๋ณต์žก๋„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด์„œ๋žฌ๋‚˜...?

๊ทธ๋Ÿฐ๋ฐ ์—ด๊ฑฐ์™€ ํŠœํ”Œ, ํŒจํ„ด๋งค์นญ์„ ์‘์šฉํ•˜๋ฉด ์˜ค๋ฒ„๋กœ๋”ฉ์„ ํ‰๋‚ด๋‚ผ์ˆ˜ ์žˆ๊ธด ํ•˜๋‹ค.

์ด๋Ÿฐ ์‹์œผ๋กœ ๋ง์ด๋‹ค.


๋ญ”๊ฐ€ ๋งŽ์ด ๊ฑด๋„ˆ๋›ด ๊ฒƒ ๊ฐ™์ด ๋А๊ปด์ง„๋‹ค๋ฉด, ์‚ฌ์‹ค์ด๋‹ค. ๊ท€์ฐฎ์•„์„œ ๋‚˜๋ˆ ์„œ ์ฐจ๊ทผ์ฐจ๊ทผ ์“ธ ๊ฑธ ๋‹ค ๋ฌถ์–ด๋ฒ„๋ ธ๋‹ค.

์—ด๊ฑฐ+ํŠœํ”Œ๋กœ ์˜ค๋ฒ„๋กœ๋”ฉํ•  ํ•ญ๋ชฉ๋“ค์„ ๋ฏธ๋ฆฌ ์ •ํ•œ๋‹ค์Œ์—

๊ทธ ์—ด๊ฑฐ ๊ฐ’์œผ๋กœ ์ธ์ž๋ฅผ ๋ฐ›๊ณ , ๊ทธ ์—ด๊ฑฐ ๋ฉค๋ฒ„์— ํ•ด๋‹นํ•˜๋Š” case๋กœ ์ด๋™ํ•ด์„œ ๊ทธ ์˜ค๋ฒ„๋กœ๋”ฉ์— ํ•ด๋‹นํ•˜๋Š” ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

์ข€๋” ๋ถˆํŽธํ•˜๊ธด ํ•˜์ง€๋งŒ ๋Œ€์ถฉ ๋А๋‚Œ์€ ๋‚œ๋‹ค.

์˜ค๋ฒ„๋กœ๋”ฉ์ข€ ๋„ฃ์–ด์ค˜...

๋งˆ์ง€๋ง‰์œผ๋กœ match ๊ตฌ๋ฌธ์— if๊ฐ€ ์ค‘์ฒฉ๋œ ํ˜•์‹์ธ guard ๊ตฌ๋ฌธ์ด ์žˆ๋‹ค.

one๊ณผ two๋ผ๋Š” ๋Œ€์ƒ์— ๋ฐ”์ธ๋”ฉ ํ•œ ๋‹ค์Œ์— ์กฐ๊ฑด์— ๋งž๋Š” ๋ถ€๋ถ„๋งŒ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ๋‹ค.

๋