Avatar ·

Como remover um elemento de um vetor em Rust, sabendo seu valor?

Olá, comunidade! Sou novo em Rust e estou tentando entender vetores. Tenho um vetor, por exemplo, `let mut numbers = vec![1, 2, 3, 4, 5];` E quero remover um elemento dele, sabendo seu valor, não o índice. Digamos que quero remover o número `3`. Em outras linguagens, como Python, eu escreveria `numbers.remove(3)` ou `numbers = [x for x in numbers if x != 3]`. Mas em Rust é mais complicado. Tentei usar o método `remove()`, mas ele aceita índice, não valor. Então tentei escrever um loop: ```rust let mut numbers = vec![1, 2, 3, 4, 5]; let target = 3; for (i, &val) in numbers.iter().enumerate() { if val == target { numbers.remove(i); break; } } ``` Mas o compilador deu um erro sobre o borrow checker. Li que em Rust não se pode modificar