if, else if, else

if, else if, else ๊ตฌ๋ฌธ์€ ์–ด๋–ค ์กฐ๊ฑด์ด ์ฐธ์ธ์ง€ ๊ฑฐ์ง“์ธ์ง€์— ๋”ฐ๋ผ ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ๊ฒฝ๋กœ๋ฅผ ๋ถ„๊ธฐํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋œ๋‹ค. Rust์—์„œ๋Š” ์กฐ๊ฑด ๋ถ€๋ถ„์ด ๋ฐ˜๋“œ์‹œ bool ํƒ€์ž…์ด์–ด์•ผ ํ•˜๋ฉฐ, ๋‹ค๋ฅธ ์–ธ์–ด์ฒ˜๋Ÿผ 0์ด๋‚˜ null ๊ฐ™์€ ๊ฐ’์œผ๋กœ ๊ฑฐ์ง“์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์€ ํ—ˆ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค. ์ฆ‰, ์กฐ๊ฑด์‹ ์ž์ฒด๊ฐ€ true ๋˜๋Š” false๋ฅผ ๋ช…์‹œ์ ์œผ๋กœ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•œ๋‹ค. ์ด ์ ์€ Rust๊ฐ€ ์ปดํŒŒ์ผ ๋‹จ๊ณ„์—์„œ ์ž ์žฌ์ ์ธ ๋…ผ๋ฆฌ์  ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค.

if ๊ตฌ๋ฌธ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์กฐ๊ฑด์‹์ด true์ผ ๋•Œ๋งŒ ๋‚ด๋ถ€ ๋ธ”๋ก์„ ์‹คํ–‰ํ•œ๋‹ค. else ํ‚ค์›Œ๋“œ๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด ์กฐ๊ฑด์‹์ด false์ผ ๊ฒฝ์šฐ์— ๋Œ€๋น„ํ•œ ๋ธ”๋ก์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ์ถ”๊ฐ€๋กœ else if ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ์กฐ๊ฑด์„ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์กฐ๊ฑด์— ๋ถ€ํ•ฉํ•˜๋Š” ๋ธ”๋ก์ด ํ•˜๋‚˜๋ผ๋„ ์‹คํ–‰๋˜๋ฉด ๋‚˜๋จธ์ง€ ์กฐ๊ฑด์€ ๋” ์ด์ƒ ํ™•์ธ๋˜์ง€ ์•Š๋Š”๋‹ค. ์ด ๋•Œ ์กฐ๊ฑด์„ ํšจ์œจ์ ์œผ๋กœ ๊ตฌ์„ฑํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ๊ณ„์‚ฐ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•ด์•ผ ํ•œ๋‹ค.

์•„๋ž˜๋Š” if, else if, else๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ณธ ๊ตฌ์กฐ์ด๋‹ค.

fn main() {
    let ์ ์ˆ˜ = 85;

    if ์ ์ˆ˜ >= 90 {
        println!("A ํ•™์ ์ด๋‹ค.");
    } else if ์ ์ˆ˜ >= 80 {
        println!("B ํ•™์ ์ด๋‹ค.");
    } else if ์ ์ˆ˜ >= 70 {
        println!("C ํ•™์ ์ด๋‹ค.");
    } else {
        println!("D ํ•™์  ์ดํ•˜์ด๋‹ค.");
    }
}

์œ„ ์ฝ”๋“œ๋Š” ์ ์ˆ˜๊ฐ€ 90 ์ด์ƒ์ด๋ฉด A ํ•™์ ์„, ๊ทธ ์™ธ์— 80 ์ด์ƒ์ด๋ฉด B ํ•™์ , 70 ์ด์ƒ์ด๋ฉด C ํ•™์ , ๊ทธ ์™ธ์—๋Š” D ํ•™์  ์ดํ•˜๋ผ๋Š” ๋ฌธ๊ตฌ๋ฅผ ์ถœ๋ ฅํ•˜๋„๋ก ํ•œ๋‹ค. ๊ฐ ์กฐ๊ฑด์‹์€ ํ‰๊ฐ€ ํ›„ true์ธ ๊ฒฝ์šฐ์— ํ•ด๋‹นํ•˜๋Š” ๋ธ”๋ก์„ ์‹คํ–‰ํ•˜๊ณ , ํ•œ ๋ฒˆ ์‹คํ–‰๋œ ์ดํ›„์—๋Š” ๋‚˜๋จธ์ง€ ์กฐ๊ฑด์„ ํ™•์ธํ•˜์ง€ ์•Š๋Š”๋‹ค.

if, else if, else๋Š” ๊ตฌ๋ฌธ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ ์™ธ์—๋„ ํ‘œํ˜„์‹(expression)์œผ๋กœ๋„ ๊ฐ„์ฃผ๋œ๋‹ค. ๋‹ค์‹œ ๋งํ•ด if ๋ธ”๋ก ์ž์ฒด๊ฐ€ ๊ฐ’์„ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์Œ ์ฝ”๋“œ์—์„œ๋Š” if ํ‘œํ˜„์‹์˜ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ณ€์ˆ˜์— ์ง์ ‘ ํ• ๋‹นํ•œ๋‹ค.

fn main() {
    let ์ˆ˜ = 10;
    let ๊ฒฐ๊ณผ = if ์ˆ˜ % 2 == 0 {
        "์ง์ˆ˜"
    } else {
        "ํ™€์ˆ˜"
    };

    println!("{}๋Š”(์€) {}", ์ˆ˜, ๊ฒฐ๊ณผ);
}

์—ฌ๊ธฐ์„œ if ์กฐ๊ฑด์‹์„ ํ†ตํ•ด ์ง์ˆ˜๋ผ๋ฉด ๋ฌธ์ž์—ด "์ง์ˆ˜"๋ฅผ, ๊ทธ๋ ‡์ง€ ์•Š๋‹ค๋ฉด "ํ™€์ˆ˜"๋ฅผ ๋ฐ˜ํ™˜ํ•˜์—ฌ ๊ฒฐ๊ณผ ๋ณ€์ˆ˜์— ์ €์žฅํ•œ๋‹ค. ์ด๋Ÿฐ ๊ตฌ์กฐ๋Š” ์‚ผํ•ญ ์—ฐ์‚ฐ์ž๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” Rust์—์„œ ๋งค์šฐ ์ž์ฃผ ํ™œ์šฉ๋œ๋‹ค. ๋‹จ, ๋‘ ๋ธ”๋ก์ด ๋‹ค๋ฅธ ํƒ€์ž…์„ ๋ฐ˜ํ™˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. Rust๋Š” ์ •์  ํƒ€์ž… ์–ธ์–ด์ด๋ฏ€๋กœ if ํ‘œํ˜„์‹์˜ ๋ชจ๋“  ๋ถ„๊ธฐ์—์„œ ๋™์ผํ•œ ํƒ€์ž…์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋ณต์žกํ•œ ์กฐ๊ฑด์ด ๋งŽ์€ ๊ฒฝ์šฐ์—๋Š” match ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜ ์ธก๋ฉด์—์„œ ๋” ๋‚˜์„ ์ˆ˜ ์žˆ์œผ๋‚˜, ๋‹จ์ˆœํžˆ ์—ฌ๋Ÿฌ ๋ถ„๊ธฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ชฉ์ ์ด๋ผ๋ฉด if, else if, else ์ฒด๊ณ„๋งŒ์œผ๋กœ๋„ ์ถฉ๋ถ„ํžˆ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋˜ํ•œ ์กฐ๊ฑด ๋ถ„๊ธฐ์™€ ๊ด€๋ จ๋œ ์ค‘๋ณต ๊ณ„์‚ฐ์ด๋‚˜ ๋น„ํšจ์œจ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด์„œ๋Š” ์กฐ๊ฑด๋ฌธ์„ ํ‰๊ฐ€ํ•˜๋Š” ์ˆœ์„œ์™€ ํƒ€๋‹น์„ฑ์„ ์„ธ๋ฐ€ํ•˜๊ฒŒ ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค.

if, else if, else ๊ตฌ๋ฌธ์€ ํ”„๋กœ๊ทธ๋žจ ํ๋ฆ„ ์ œ์–ด์—์„œ ํ•„์ˆ˜์ ์ด๋‹ค. ์กฐ๊ฑด์‹์„ ์—„๊ฒฉํ•˜๊ฒŒ bool ํƒ€์ž…์œผ๋กœ ๊ฐ•์ œํ•จ์œผ๋กœ์จ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์˜ค๋ฅ˜ ๋ฐœ์ƒ์„ ์ค„์ด๊ณ , ํ‘œํ˜„์‹์œผ๋กœ์„œ์˜ ํ™œ์šฉ ๊ฐ€๋Šฅ์„ฑ๋„ ์ œ๊ณตํ•˜์—ฌ ์ฝ”๋“œ์˜ ๊ฐ„๊ฒฐํ•จ์„ ๋†’์ด๋Š” Rust์˜ ํŠน์„ฑ์„ ์ž˜ ๋ณด์—ฌ์ฃผ๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ธฐ๋Šฅ์ด๋‹ค.

Last updated