[Rust]Vec(ベクタ)の末尾からN個の要素を削除するには?

Rust

どうも、ちょげ(@chogetarou)です。

Vec(ベクタ)の最後から指定した要素数を削除する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

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]

コメント

タイトルとURLをコピーしました