Removes elements that match the predicate from SortedSet in CSharp
Description
The following code shows how to removes elements that match the predicate from SortedSet.
Example
using System;/*from w ww. j a v a 2s. c o m*/
using System.Collections;
using System.Collections.Generic;
using System.IO;
class Program
{
static void Main(string[] args)
{
SortedSet<string> set1 = new SortedSet<string>();
set1.Add("a");
set1.Add("b");
set1.Add("d");
set1.Add("d");
SortedSet<string> set2 = new SortedSet<string>();
set2.Add("a");
set2.Add("b");
set2.Add("c");
set2.Add("d");
set1.RemoveWhere(myFunc);
foreach (string s in set1)
{
Console.WriteLine(s);
}
}
private static bool myFunc(string s)
{
if (s.ToLower().EndsWith("a") ||
s.ToLower().EndsWith("b"))
{
return true;
}
else
{
return false;
}
}
}
The code above generates the following result.