How to Filter Items of a Set based on a Condition in Rust - Step by Step Examples
How to Filter Items of a Set based on a Condition in Rust ?
Answer
To filter items of a set based on a condition in Rust, you can use iterators and closures with the filter method to create a new set from the filtered items.
✐ Examples
1 Filtering Numbers Greater Than 5
In this example,
- We create a set named
number_set
using thehashset!
macro from thehashbrown
crate, which contains integer values1
,5
,10
,15
, and20
. - We use the
iter()
method to create an iterator overnumber_set
and chain it with thefilter
method, which takes a closure as the filtering condition to filter numbers greater than 5. - We collect the filtered items into a new set named
filtered_set
. - Finally, we iterate through
filtered_set
and print each filtered item to the console.
Rust Program
use hashbrown::HashSet;
fn main() {
let number_set = hashset!{1, 5, 10, 15, 20};
let filtered_set: HashSet<i32> = number_set.iter().filter(|&num| *num > 5).copied().collect();
for num in &filtered_set {
println!("{}", num);
}
}
Output
10 15 20
2 Filtering Strings Containing 'a'
In this example,
- We create a set named
string_set
using thehashset!
macro from thehashbrown
crate, which contains string values"apple"
,"banana"
,"cherry"
,"date"
, and"grape"
. - We use the
iter()
method to create an iterator overstring_set
and chain it with thefilter
method, which takes a closure as the filtering condition to filter strings containing the letter 'a'. - We collect the filtered items into a new set named
filtered_string_set
. - Finally, we iterate through
filtered_string_set
and print each filtered string to the console.
Rust Program
use hashbrown::HashSet;
fn main() {
let string_set = hashset!{"apple", "banana", "cherry", "date", "grape"};
let filtered_string_set: HashSet<&str> = string_set.iter().filter(|&str| str.contains('a')).copied().collect();
for str in &filtered_string_set {
println!("{}", str);
}
}
Output
apple banana grape
Summary
In this tutorial, we learned How to Filter Items of a 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 ?