break์™€ continue

  • ๋ฃจํ”„๋ฅผ ์กฐ๊ธฐ์— ์ข…๋ฃŒํ•˜๋ ค๋ฉด break๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค,
  • ๋‹ค์Œ ๋ฐ˜๋ณต์„ ์ฆ‰์‹œ ์‹œ์ž‘ํ•˜๋ ค๋ฉด continue๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๋ฃจํ”„๋ฅผ ๋น ์ ธ๋‚˜๊ฐ€๋ ค๋ฉด break๋ฅผ, ๋‹ค์Œ ๋ฐ˜๋ณต์œผ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ ์œ„ํ•ด์„œ๋Š” continue๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ค‘์ฒฉ ๋ฃจํ”„์—์„œ๋Š” ๋ ˆ์ด๋ธ”๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

fn main() {
    let v = vec![10, 20, 30];
    let mut iter = v.into_iter();
    'outer: while let Some(x) = iter.next() {
        println!("x: {x}");
        let mut i = 0;
        while i < x {
            println!("x: {x}, i: {i}");
            i += 1;
            if i == 3 {
                break 'outer;
            }
        }
    }
}

์œ„ ์˜ˆ์ œ๋Š” ๋‚ด๋ถ€์˜ while ๋ฃจํ”„๋ฅผ 3ํšŒ ๋ฐ˜๋ณตํ•œ ํ›„ ๋ฐ”๊นฅ ๋ฃจํ”„๋ฅผ ๋น ์ ธ๋‚˜๊ฐ‘๋‹ˆ๋‹ค.