Метод get
Метод get возвращает ссылку на элемент
вектора по указанному индексу. В отличие от
оператора индексации [], метод не паникует
при выходе за границы, а возвращает Option.
Параметром метод принимает индекс элемента,
который нужно получить.
Если элемент с таким индексом существует,
метод возвращает Some со ссылкой на элемент.
Если индекса нет в векторе, возвращается None.
Синтаксис
vec.get(index)
Пример
Давайте получим элемент вектора с индексом 2:
fn main()
{
let vec = vec![1, 2, 3, 4, 5];
let res = vec.get(2);
println!("{:?}", res);
}
Результат выполнения кода:
Some(3)
Пример
Давайте попробуем получить элемент по индексу, которого нет в векторе:
fn main()
{
let vec = vec![1, 2, 3, 4, 5];
let res = vec.get(10);
println!("{:?}", res);
}
Результат выполнения кода:
None
Пример
Давайте безопасно обработаем результат с помощью
конструкции match:
fn main()
{
let vec = vec!["a", "b", "c", "d", "e"];
match vec.get(1) {
Some(value) => println!("Value: {}", value),
None => println!("Index out of bounds"),
}
}
Результат выполнения кода:
"Value: b"