Comment trouver l'indice d'un élément dans un tableau, un vecteur ou une slice en Rust ?
Bonjour ! Je suis débutant en Rust et j'essaie de résoudre un problème simple : trouver l'indice d'un élément dans un tableau. Dans d'autres langages (par exemple, Python), j'ai l'habitude de méthodes comme `list.index()`, mais en Rust c'est différent.
Voici un exemple : j'ai un tableau de nombres et je veux trouver l'indice du nombre `5`.
```rust
fn main() {
let arr = [1, 3, 5, 7, 9];
let target = 5;
// Comment trouver l'indice de 5 ?
}
```
J'ai essayé d'utiliser `arr.iter().position(|x| x == target)`, mais j'obtiens une erreur. Dans la documentation, il est écrit que `position` retourne `Option`, et je ne comprends pas comment traiter correctement ce résultat. Je ne suis pas sûr non plus que cela fonctionne pour `Vec` et les slices (`&[i32]`).
Autre question : que faire si l'élément n'est pas trouvé ? En Python, j'obtiendrais une exception, mais en Rust, comme je l'ai compris, il faut gérer `None`. Mais comment le faire de manière élégante et idiomatique ?
Je serais reconnaissant pour des exemples pour un tableau, un vecteur et une slice. Je veux comprendre comment cela fonctionne en Rust, surtout avec le système de possession et d'emprunt. Merci d'avance !