comnic's Dev&Life

[Rust] 4. 제어 흐름(if, loop, while, for) 본문

Rust

[Rust] 4. 제어 흐름(if, loop, while, for)

comnic 2023. 12. 3. 07:33
반응형

4. 제어 흐름

 

3.1 조건문 (if, else if, else)

if문은 조건에 따라 코드 블록을 실행합니다.
Rust에서는 if, else if, else를 사용하여 다양한 조건을 처리할 수 있습니다.

let number = 42;

if number > 0 {
    println!("양수입니다.");
} else if number < 0 {
    println!("음수입니다.");
} else {
    println!("0입니다.");
}

 

3.2 반복문 (loop, while, for)

반복문은 코드 블록을 여러 번 실행하는 데 사용됩니다.
Rust에는 loop, while, for 반복문이 있습니다.

3.2.1 loop

loop는 무한 루프를 생성합니다. break 키워드를 사용하여 루프를 종료할 수 있습니다.

let mut counter = 0;

loop {
    println!("무한 루프 중: {}", counter);

    counter += 1;

    if counter == 5 {
        break;
    }
}

 

3.2.2 while

while은 주어진 조건이 true일 동안 코드 블록을 반복 실행합니다.

let mut x = 0;

while x < 5 {
    println!("반복 중: {}", x);
    x += 1;
}

 

3.2.3 for

for는 주로 반복 범위를 나타내는 iterator를 사용하여 반복합니다.

for number in 1..=5 {
    println!("for 반복 중: {}", number);
}

 

3.3 패턴 매칭 (match)

match는 다양한 값들에 대한 패턴을 지정하여 코드를 실행합니다.

let number = 42;

match number {
    0 => println!("0입니다."),
    1 | 2 => println!("1 또는 2입니다."),
    3..=9 => println!("3에서 9까지의 숫자입니다."),
    _ => println!("기타 숫자입니다."),
}

 

3.4 조건부 표현 (if let)

if let은 match의 간략한 버전으로서, 특정 패턴에 대해서만 코드를 실행할 수 있습니다.

let some_value: Option<i32> = Some(42);

if let Some(x) = some_value {
    println!("값이 있습니다: {}", x);
} else {
    println!("값이 없습니다.");
}

* Some()에 대해서는 다음 추가적인 글로 좀 더 자세히 설명하도록 하겠습니다.

반응형
Comments