首页 > 解决方案 > 如何以函数的方式在向量中查找值并返回其索引?

问题描述

我在文档中找不到允许编写与此等效的代码的迭代器方法:

let v = vec![1,2,3];
let key_of_two = v.iter().find_key(|x| x == 2);
assert_eq!(key_of_two, 1)

只有find方法,但是如何返回索引而不是元素?

标签: rustiterator

解决方案


幸运的是Iterator::position

let v = vec![1,2,3];
let key_of_two = v.iter().position(|&x| x == 2);
assert_eq!(key_of_two, Some(1));

推荐阅读