RosettaCodeData/Task/Array-concatenation/Rust/array-concatenation.rust

18 lines
439 B
Plaintext

fn main() {
let a_vec: Vec<i32> = vec![1, 2, 3, 4, 5];
let b_vec: Vec<i32> = vec![6; 5];
let c_vec = concatenate_arrays::<i32>(a_vec.as_slice(), b_vec.as_slice());
println!("{:?} ~ {:?} => {:?}", a_vec, b_vec, c_vec);
}
fn concatenate_arrays<T: Clone>(x: &[T], y: &[T]) -> Vec<T> {
let mut concat: Vec<T> = vec![x[0].clone(); x.len()];
concat.clone_from_slice(x);
concat.extend_from_slice(y);
concat
}