どうも、ちょげ(@chogetarou)です。
Vec(ベクタ)の最後から指定した要素数を削除する方法を紹介します。
方法

Vec(ベクタ)の末尾からN個の要素を削除するには、drain()を使います。
まず、Vec(ベクタ)からdrain()を呼び出します。
そして、drain()の引数に「length – N..length」(length=要素数、N=削除する要素数)を指定します。
//vect=対象のベクタ, N=削除する要素数
let length = vect.len(); //要素数
vect.drain(length - N..length);
上記のdrain()は、呼び出したVec(ベクタ)の末尾からN個の要素を削除します。
使用例
fn main() {
let mut numbers = vec![1, 2, 3, 4, 5, 6, 7, 8];
let length = numbers.len();
numbers.drain(length - 3..length);
println!("{:?}", numbers);
}
出力:
[1, 2, 3, 4, 5]
コメント