How to Remove Items from Set based on a Condition in Rust - Step by Step Examples
How to Remove Items from Set based on a Condition in Rust ?
Answer
To remove items from a set based on a condition in Rust, you can use the retain
method, which allows you to keep only the elements that satisfy a given predicate.
✐ Examples
1 Removing Even Numbers from Integer Set
In this example,
- We include the necessary crate for sets:
use std::collections::HashSet;
. - We create a
HashSet<i32>
namednumber_set
and initialize it with the values[1, 2, 3, 4, 5].iter().cloned().collect()
. - We use the
retain
method with a lambda function to define the condition for removing elements. The lambda function|&x| x % 2 != 0
keeps only the odd numbers in the set. - Finally, we iterate over the set and print the remaining elements to the console.
Rust Program
use std::collections::HashSet;
fn main() {
let mut number_set: HashSet<i32> = [1, 2, 3, 4, 5].iter().cloned().collect();
number_set.retain(|&x| x % 2 != 0);
for num in &number_set {
print!("{} ", num);
}
println!();
}
Output
1 3 5
2 Removing Short Strings from String Set
In this example,
- We include the necessary crate for sets:
use std::collections::HashSet;
. - We create a
HashSet<String>
namedstring_set
and initialize it with the values["apple", "banana", "cherry", "date", "grape"].iter().cloned().map(String::from).collect()
. - We use the
retain
method with a lambda function to define the condition for removing elements. The lambda function|s| s.len() >= 6
keeps only the strings with a length of 6 or more characters. - Finally, we iterate over the set and print the remaining elements to the console.
Rust Program
use std::collections::HashSet;
fn main() {
let mut string_set: HashSet<String> = ["apple", "banana", "cherry", "date", "grape"].iter().cloned().map(String::from).collect();
string_set.retain(|s| s.len() >= 6);
for str in &string_set {
print!("{} ", str);
}
println!();
}
Output
banana cherry
Summary
In this tutorial, we learned How to Remove Items from Set based on a Condition in Rust language with well detailed examples.
More Rust Sets Tutorials
- How to create an Empty Set in Rust ?
- How to Initialize a Set in Rust ?
- How to Get Length of a Set in Rust ?
- How to create a Set of size N in Rust ?
- How to create a Set of Numbers from 1 to N in Rust ?
- How to create a Set of integers in Rust ?
- How to create a Set of Strings in Rust ?
- How to Access Items in a Set in Rust ?
- How to get a Random Item in a Set in Rust ?
- How to Iterate Over a Set in Rust ?
- How to check if a Set is Empty in Rust ?
- How to check if a Set is Not Empty in Rust ?
- How to get Subset from a Set in Rust ?
- How to check if a Specific Item is present in the Set in Rust ?
- How to check if a Set contains all the items of Another Set in Rust ?
- How to Sort Items of a Set in Rust ?
- How to Copy a Set in Rust ?
- How to add an Item to a Set in Rust ?
- How to find Union of Two Sets in Rust ?
- How to find Intersection of Two Sets in Rust ?
- How to check if Two Sets are Equal in Rust ?
- How to Convert a Set of Integers to a Set of Strings in Rust ?
- How to Convert a Set of Strings to a Set of Integers in Rust ?
- How to Convert a Set of Floats to a Set of Strings in Rust ?
- How to Convert a Set of Strings to a Set of Floats in Rust ?
- How to Filter Items of a Set based on a Condition in Rust ?
- How to Remove Specific Item from a Set in Rust ?
- How to Remove Items from Set based on a Condition in Rust ?
- How to create a Set of Sets in Rust ?