Bird
Raised Fist0
Rustprogramming~5 mins

Adding elements to vectors in Rust - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a vector in Rust?
A vector in Rust is a growable list type that can store multiple values of the same type in a contiguous memory block. It allows adding, removing, and accessing elements dynamically.
Click to reveal answer
beginner
How do you add a single element to a vector in Rust?
You use the push() method. For example: vec.push(5); adds the value 5 to the end of the vector.
Click to reveal answer
beginner
What happens if you try to add elements to a vector that is not mutable?
You will get a compile-time error because vectors must be declared as mut to allow adding or changing elements.
Click to reveal answer
intermediate
How can you add multiple elements to a vector at once?
You can use the extend() method with an iterable, like another vector or slice. Example: vec.extend(&[1, 2, 3]); adds three elements.
Click to reveal answer
intermediate
What is the difference between push() and extend() when adding elements to a vector?
push() adds a single element to the vector, while extend() adds multiple elements from an iterable collection.
Click to reveal answer
Which method adds a single element to the end of a Rust vector?
Apush()
Bextend()
Cinsert()
Dappend()
What must you declare a vector as to add elements to it?
Aconst
Bstatic
Cmut
Dlet
Which method adds multiple elements from a slice or another vector?
Aextend()
Bpush()
Cinsert()
Dremove()
What will happen if you try to push an element to a non-mutable vector?
AIt will add the element successfully
BThe vector will be cloned
CRuntime error
DCompile-time error
Which of these is NOT a valid way to add elements to a vector?
Avec.push(10)
Bvec.add(5)
Cvec.extend(&[1, 2, 3])
Dvec.insert(0, 7)
Explain how to add elements to a vector in Rust and why mutability matters.
Think about how you change a list in real life and what Rust requires to allow changes.
You got /4 concepts.
    Describe the difference between push() and extend() when working with vectors.
    Compare adding one item versus adding a group of items to a shopping cart.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the push method do when used on a Rust vector?
      easy
      A. Removes the last element from the vector
      B. Adds a new element to the end of the vector
      C. Creates a new vector with one element
      D. Sorts the elements in the vector

      Solution

      1. Step 1: Understand the purpose of push

        The push method is used to add elements to a vector in Rust.
      2. Step 2: Identify what push does specifically

        It adds a new element to the end of the vector, increasing its size by one.
      3. Final Answer:

        Adds a new element to the end of the vector -> Option B
      4. Quick Check:

        push adds element [OK]
      Hint: Remember: push always adds at the end [OK]
      Common Mistakes:
      • Confusing push with pop (which removes elements)
      • Thinking push creates a new vector
      • Assuming push sorts the vector
      2. Which of the following is the correct way to declare a mutable vector and add the number 10 to it in Rust?
      easy
      A. let v = Vec::new(); v.add(10);
      B. let v = Vec::new(); v.push(10);
      C. let mut v = Vec::new(); v.add(10);
      D. let mut v = Vec::new(); v.push(10);

      Solution

      1. Step 1: Check vector mutability

        To add elements, the vector must be mutable, so let mut v is required.
      2. Step 2: Use correct method to add element

        The method to add an element is push, not add.
      3. Final Answer:

        let mut v = Vec::new(); v.push(10); -> Option D
      4. Quick Check:

        Mutable vector + push method [OK]
      Hint: Mutable vector + push method adds elements [OK]
      Common Mistakes:
      • Forgetting to make the vector mutable
      • Using a non-existent method like add
      • Trying to push on an immutable vector
      3. What will be the output of this Rust code?
      let mut v = vec![1, 2];
      v.push(3);
      println!("{:?}", v);
      medium
      A. [1, 2]
      B. Compilation error
      C. [1, 2, 3]
      D. [3, 1, 2]

      Solution

      1. Step 1: Understand initial vector content

        The vector starts with elements [1, 2].
      2. Step 2: Apply the push method

        The push(3) adds 3 at the end, so vector becomes [1, 2, 3].
      3. Final Answer:

        [1, 2, 3] -> Option C
      4. Quick Check:

        push adds element at end [OK]
      Hint: push adds element at the end of vector [OK]
      Common Mistakes:
      • Expecting push to add at the start
      • Thinking push replaces elements
      • Assuming code causes error
      4. Identify the error in this Rust code snippet:
      let v = Vec::new();
      v.push(5);
      medium
      A. Vector is not mutable, so push cannot be called
      B. push method does not exist for vectors
      C. Vec::new() cannot create an empty vector
      D. Missing semicolon after Vec::new()

      Solution

      1. Step 1: Check vector mutability

        The vector is declared as immutable with let v, so it cannot be changed.
      2. Step 2: Understand push method requirements

        The push method requires the vector to be mutable to add elements.
      3. Final Answer:

        Vector is not mutable, so push cannot be called -> Option A
      4. Quick Check:

        push needs mutable vector [OK]
      Hint: Make vector mutable to use push [OK]
      Common Mistakes:
      • Assuming push works on immutable vectors
      • Thinking Vec::new() is invalid
      • Ignoring mut keyword necessity
      5. You want to add multiple elements [4, 5, 6] to an existing mutable vector v. Which code correctly adds all these elements efficiently?
      hard
      A. v.extend([4, 5, 6]);
      B. v.push(4, 5, 6);
      C. v.add([4, 5, 6]);
      D. v.push([4, 5, 6]);

      Solution

      1. Step 1: Understand adding multiple elements

        Using push adds one element at a time, so multiple calls are needed for multiple elements.
      2. Step 2: Use the efficient method for multiple elements

        The extend method adds all elements from an iterable at once, which is more efficient.
      3. Final Answer:

        v.extend([4, 5, 6]); -> Option A
      4. Quick Check:

        Use extend for multiple elements [OK]
      Hint: Use extend to add many elements at once [OK]
      Common Mistakes:
      • Using push with a whole array (causes error)
      • Using non-existent add method
      • Calling push multiple times instead of extend
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard