Ich brauche einen Index eines Elements in einem Vektor von Strings zu finden, ist es das, was ich so weit gekommen:finden Index eines Elements in Vektor
fn main() {
let test: Vec<String> = vec!["one".to_string(), "two".to_string(), "three".to_string()];
let index: i32 = test.iter().enumerate().find(|&r| r.1.to_string() == "two".to_string()).unwrap().0;
}
es einen Fehler produziert
error: mismatched types:
expected `i32`,
found `usize`
(expected i32,
found usize) [E0308]
let index: i32 = test.iter().enumerate().find(|&r| r.1.to_string() == "two".to_string()).unwrap().0;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ich nehme an, das ist, weil enumerate()
gibt ein Tupel von <usize, _>
(korrigieren Sie mich, wenn ich falsch liege), aber wie konvertiere ich usize
zu i32
hier? Wenn es einen besseren Ansatz gibt, bin ich auch offen für Vorschläge.
FYI, kleine Nitpick - Tupel sind '(A, B)', nicht ''. – mdup