Rust(11) Loop 반복문

러스트의 반복문 특징

loop 라벨링

loop 반복문의겨우 아래 코드처럼 ‘를 사용해 라벨링이 가능하다. 라벨링을 사용해서 inner loop에서 outer loop를 break 한번에 빠져 나올수있다.

fn main() {
    let mut count = 0;
    'counting_up: loop {
        println!("count = {count}");
        let mut remaining = 10;

        loop {
            println!("remaining = {remaining}");
            if remaining == 9 {
                break;
            }
            if count == 2 {
                break 'counting_up;    // <---- 
            }
            remaining -= 1;
        }

        count += 1;
    }
    println!("End count = {count}");
}

while (조건식 필수)

while 루프는 C++이나 JS등 다른언어와 크게 다르지않다.

fn main() {
    let mut number = 3;

    while number != 0 {
        println!("{number}!");

        number -= 1;
    }

    println!("LIFTOFF!!!");
}

for (배열 순회)

for 은 다음처럼 사용하면 배열의 아이템들을 한번씩 순회할수 있다.

fn main() {
    let a = [10, 20, 30, 40, 50];

    for element in a {
        println!("the value is: {element}");
    }
}

for + rev()

rev()는 리버스의 줄임말로 배열 내 숫자를 1, 2, 3을 3, 2 ,1 순서로 number iterator에 넣어줌.

fn main() {
    for number in (1..4).rev() {
        println!("{number}!");
    }
    println!("LIFTOFF!!!");
}

// rev()를 쓰지않을때는 range에 ()가 없어야함
    for number in 1..4 {
        println!("{number}!");
    }

댓글 남기기