Метод extend
Метод extend добавляет в вектор все элементы
из переданного итератора. Он не возвращает значения,
а изменяет исходный вектор, расширяя его новыми элементами.
Параметром метод принимает итератор, элементы которого
нужно добавить в вектор.
Синтаксис
vec.extend(iter)
Пример
Давайте добавим в вектор vec![1, 2, 3] элементы
из другого вектора vec![4, 5]:
fn main()
{
let mut vec = vec![1, 2, 3];
vec.extend(vec![4, 5]);
println!("{:?}", vec);
}
Результат выполнения кода:
[1, 2, 3, 4, 5]
Пример
Давайте добавим в вектор vec!["a", "b"] строки
из среза ["c", "d", "e"]:
fn main()
{
let mut vec = vec!["a", "b"];
vec.extend(["c", "d", "e"]);
println!("{:?}", vec);
}
Результат выполнения кода:
["a", "b", "c", "d", "e"]
Пример
Давайте добавим в вектор vec![1, 2, 3] числа
от 4 до 7, используя диапазон:
fn main()
{
let mut vec = vec![1, 2, 3];
vec.extend(4..7);
println!("{:?}", vec);
}
Результат выполнения кода:
[1, 2, 3, 4, 5, 6]
Пример
Давайте добавим в вектор vec![1, 2, 3] элементы
из другого вектора, преобразованные с помощью метода map:
fn main()
{
let mut vec = vec![1, 2, 3];
vec.extend(vec![1, 2, 3].iter().map(|x| x * 10));
println!("{:?}", vec);
}
Результат выполнения кода:
[1, 2, 3, 10, 20, 30]
Смотрите также
-
метод
push,
который добавляет один элемент в конец вектора -
метод
append,
который перемещает все элементы из другого вектора -
метод
extend_from_slice,
который добавляет элементы из среза -
метод
insert,
который вставляет элемент по указанному индексу