본문 바로가기
Rust - 교육

[Rust 교육] 러스트에서 반복문과 반복자(Iterators) 알아보기

by CodeCrossover 2023. 8. 11.
반응형

"러스트의 반복문과 반복자 활용 방법에 대한 깊은 탐구. 데이터 순회와 처리를 중심으로 러스트 프로그래밍의 효율성을 강조합니다."


러스트는 코드의 효율성과 가독성을 높이기 위한 다양한 제어 구조를 제공합니다. 그중에서도 '반복문'과 '반복자(Iterators)'는 데이터나 연산의 반복 처리에 있어 핵심적인 역할을 합니다. 이 글에서는 러스트의 반복문과 반복자 사용 방법에 대해 알아보겠습니다.

 

1. 반복문

러스트에서는 주로 `loop`, `while`, `for`와 같은 반복문을 사용하여 코드를 반복적으로 실행할 수 있습니다.

 

1.1 `loop`

`loop`는 조건 없이 코드를 무한히 반복합니다.

loop {
    println!("This will run forever!");
}

 

1.2 `while`

`while`은 주어진 조건이 참인 동안 코드를 반복합니다.

let mut number = 3;

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

 

1.3 `for`

`for`는 특정 범위나 컬렉션을 순회하며 코드를 반복합니다.

for number in (1..4).rev() {
    println!("{}!", number);
}

 

2. 반복자(Iterators)

반복자는 시퀀스의 아이템들을 순회하는 방법을 제공합니다.

 

2.1 `iter()`, `iter_mut()`, `into_iter()`

컬렉션에 대한 반복자를 생성하는 메서드들입니다.

let v = vec![1, 2, 3];

let v_iter = v.iter();

for val in v_iter {
    println!("Value: {}", val);
}

 

2.2 반복자 메서드

반복자에는 `map`, `filter`와 같은 다양한 메서드가 있어, 데이터를 효율적으로 처리할 수 있습니다.

let v = vec![1, 2, 3];
let doubled: Vec<_> = v.iter().map(|x| x * 2).collect();

 

3. 결론

러스트의 반복문과 반복자는 데이터의 반복 처리를 간결하고 효율적으로 수행할 수 있게 도와줍니다. 이를 통해 더 명확하고 최적화된 코드를 작성할 수 있습니다.

반응형