w3resource

Rust Function: Compare Tuple elements

Rust Pattern Maching: Exercise-5 with Solution

Write a Rust function that takes a vector and returns "Vector is empty!" if it's empty and "Vector is not empty!" otherwise.

Sample Solution:

Rust Code:

// Function that checks if the input vector is empty or not and returns a corresponding string.
fn check_vector(vector: Vec<i32>) -> &'static str {
    // Match on the length of the vector using the `is_empty()` method
    match vector.is_empty() {
        true => "Vector is empty!",   // If vector is empty, return this message
        false => "Vector is not empty!" // If vector is not empty, return this message
    }
}

fn main() {
    // Example usage
    let empty_vector: Vec<i32> = vec![];
    let non_empty_vector = vec![100, 200, 300, 400];
    
    // Call the check_vector function with both empty and non-empty vectors
    println!("{}", check_vector(empty_vector));       // Output: Vector is empty!
    println!("{}", check_vector(non_empty_vector));   // Output: Vector is not empty!
}

Output:

Vector is empty!
Vector is not empty!

Explanation:

In the exercise above,

  • check_vector Function:
    • This function takes a vector of integers (Vec<i32>) as input.
    • Inside the function, a 'match' statement is used to pattern match on the result of the "is_empty()" method called on the vector.
    • If the vector is empty (true branch of the match), the function returns the string "Vector is empty!".
    • If the vector is not empty (false branch of the match), the function returns the string "Vector is not empty!".
  • main Function:
    • In the "main()" function, two vectors are created: one empty vector 'empty_vector' and one non-empty vector 'non_empty_vector'.
    • The "check_vector()" function is called twice, once with 'empty_vector' and once with 'non_empty_vector'.
    • The result of each call is printed to the console using "println!()".

Rust Code Editor:


Previous: Rust Function: Check Option Some or None.
Next: Rust Function: Compare Tuple elements.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.