ExtractIf — 조건에 맞는 요소를 제거하는 반복자

ExtractIf — 조건에 맞는 요소를 제거하는 반복자

ExtractIf는 클로저를 사용해 요소를 제거할지 결정하는 반복자예요. Vec::extract_if 메서드로 생성돼요.

출처: Rust 공식 문서

본문

pub struct ExtractIf<'a, T, F, A = Global>
where
    A: Allocator,
{ /* private fields */ }

예시

let mut v = vec![0, 1, 2];
let iter: std::vec::ExtractIf<'_, _, _> = v.extract_if(.., |x| *x % 2 == 0);

순회하면서 조건자(F)를 만족하는 요소를 벡터에서 추출(제거)하고, 반복자를 통해서 그 요소들을 얻을 수 있어요. 제거된 요소는 반복자를 통해 소비할 수 있고, 반복자가 버려지면 남은 요소는 소멸돼요.

더 알아보기 (Learn more)