How to add a range of elements of a vector to another vector at a specific position in Rust

2 Answers

0 votes
fn main() {
    let source = vec![10, 20, 30, 40, 50, 60, 70, 80];
    let mut target = vec![1, 2, 3, 4];

    // Add elements (30, 40, 50) at a specific position
    // 2..2 is a range from index 2 (inclusive) to index 2 (exclusive).
    target.splice(2..2, source[2..5].iter().cloned());

    println!("{:?}", target); 
}



/*
run:

[1, 2, 30, 40, 50, 3, 4]

*/

 



answered Oct 17 by avibootz
0 votes
fn main() {
    let source = vec![10, 20, 30, 40, 50, 60, 70, 80];
    let mut target = vec![1, 2, 3, 4, 5, 6, 7, 8, 9];

    // Add elements (30, 40, 50) at a specific position
    // 1..4 is a range from index 1 (inclusive) to index 4 (exclusive).
    target.splice(1..4, source[2..5].iter().cloned());

    println!("{:?}", target); 
}



/*
run:

[1, 30, 40, 50, 5, 6, 7, 8, 9]

*/

 



answered Oct 17 by avibootz
...