Rust Function: Compare Tuple elements
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.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics