HashSet<T>.TrimExcess Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
TrimExcess() |
Affecte à la capacité d'un objet HashSet<T> le nombre réel d'éléments qu'il contient, arrondi à une valeur proche spécifique à l'implémentation. |
TrimExcess(Int32) |
TrimExcess()
- Source:
- HashSet.cs
- Source:
- HashSet.cs
- Source:
- HashSet.cs
Affecte à la capacité d'un objet HashSet<T> le nombre réel d'éléments qu'il contient, arrondi à une valeur proche spécifique à l'implémentation.
public:
void TrimExcess();
public void TrimExcess ();
member this.TrimExcess : unit -> unit
Public Sub TrimExcess ()
Exemples
L’exemple suivant crée et remplit une HashSet<T> collection, puis efface la collection et libère la mémoire référencée par celle-ci.
HashSet<int> Numbers = new HashSet<int>();
for (int i = 0; i < 10; i++)
{
Numbers.Add(i);
}
Console.Write("Numbers contains {0} elements: ", Numbers.Count);
DisplaySet(Numbers);
Numbers.Clear();
Numbers.TrimExcess();
Console.Write("Numbers contains {0} elements: ", Numbers.Count);
DisplaySet(Numbers);
void DisplaySet(HashSet<int> set)
{
Console.Write("{");
foreach (int i in set)
{
Console.Write(" {0}", i);
}
Console.WriteLine(" }");
}
/* This example produces output similar to the following:
* Numbers contains 10 elements: { 0 1 2 3 4 5 6 7 8 9 }
* Numbers contains 0 elements: { }
*/
Imports System.Collections.Generic
Class Program
Shared Sub Main()
Dim Numbers As HashSet(Of Integer) = New HashSet(Of Integer)()
For i As Integer = 0 To 9
Numbers.Add(i)
Next i
Console.Write("Numbers contains {0} elements: ", Numbers.Count)
DisplaySet(Numbers)
Numbers.Clear()
Numbers.TrimExcess()
Console.Write("Numbers contains {0} elements: ", Numbers.Count)
DisplaySet(Numbers)
End Sub
' This code example produces output similar to the following:
' Numbers contains 10 elements: { 0 1 2 3 4 5 6 7 8 9 }
' Numbers contains 0 elements: { }
Private Shared Sub DisplaySet(ByVal coll As HashSet(Of Integer))
Console.Write("{")
For Each i As Integer In coll
Console.Write(" {0}", i)
Next i
Console.WriteLine(" }")
End Sub
End Class
Remarques
Vous pouvez utiliser la méthode pour réduire la TrimExcess surcharge de mémoire d’un HashSet<T> objet une fois qu’aucun nouvel élément n’est ajouté. Pour effacer complètement un HashSet<T> objet et libérer toute la mémoire référencée par celui-ci, appelez cette méthode après avoir appelé la Clear méthode .
Cette méthode est une opération O(n
), où n
est Count.
S’applique à
TrimExcess(Int32)
- Source:
- HashSet.cs
public:
void TrimExcess(int capacity);
public void TrimExcess (int capacity);
member this.TrimExcess : int -> unit
Public Sub TrimExcess (capacity As Integer)
Paramètres
- capacity
- Int32
S’applique à
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de l’année 2024, nous abandonnerons progressivement le mécanisme de retour d’information GitHub Issues pour le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultez :Soumettre et afficher des commentaires pour