SortedSet<T>.RemoveWhere(Predicate<T>) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Entfernt alle Elemente aus einer SortedSet<T>-Auflistung, die die vom angegebenen Prädikat definierten Bedingungen erfüllen.
public:
int RemoveWhere(Predicate<T> ^ match);
public int RemoveWhere (Predicate<T> match);
member this.RemoveWhere : Predicate<'T> -> int
Public Function RemoveWhere (match As Predicate(Of T)) As Integer
Parameter
- match
- Predicate<T>
Der Delegat, der die Bedingungen für die Elemente definiert, die entfernt werden sollen.
Gibt zurück
Die Anzahl von Elementen, die aus der SortedSet<T>-Auflistung entfernt wurden.
Ausnahmen
match
ist null
.
Beispiele
Im folgenden Beispiel werden unerwünschte Elemente aus einem sortierten Satz entfernt. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die SortedSet<T>-Klasse bereitgestellt wird.
// Defines a predicate delegate to use
// for the SortedSet.RemoveWhere method.
private static bool IsDoc(string s)
{
s = s.ToLower();
return (s.EndsWith(".txt") ||
s.EndsWith(".xls") ||
s.EndsWith(".xlsx") ||
s.EndsWith(".pdf") ||
s.EndsWith(".doc") ||
s.EndsWith(".docx"));
}
' Defines a predicate delegate to use
' for the SortedSet.RemoveWhere method.
Private Function IsDoc(s As String) As Boolean
s = s.ToLower()
Return s.EndsWith(".txt") OrElse
s.EndsWith(".doc") OrElse
s.EndsWith(".xls") OrElse
s.EndsWith(".xlsx") OrElse
s.EndsWith(".pdf") OrElse
s.EndsWith(".doc") OrElse
s.EndsWith(".docx")
End Function
// Remove elements that have non-media extensions.
// See the 'IsDoc' method.
Console.WriteLine("Remove docs from the set...");
Console.WriteLine($"\tCount before: {mediaFiles1.Count}");
mediaFiles1.RemoveWhere(IsDoc);
Console.WriteLine($"\tCount after: {mediaFiles1.Count}");
' Remove elements that have non-media extensions. See the 'IsDoc' method.
Console.WriteLine("Remove docs from the set...")
Console.WriteLine($"{vbTab}Count before: {mediaFiles1.Count}")
mediaFiles1.RemoveWhere(AddressOf IsDoc)
Console.WriteLine($"{vbTab}Count after: {mediaFiles1.Count}")
Hinweise
match
darf nicht geändert werden SortedSet<T>. Dies kann zu unerwarteten Ergebnissen führen.
Das Aufrufen dieser Methode ist ein O(n)
Vorgang, wobei n
ist Count.