HashSet<T>.Count Eigenschaft
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.
Ruft die Anzahl der Elemente ab, die in einem Satz enthalten sind.
public:
property int Count { int get(); };
public int Count { get; }
member this.Count : int
Public ReadOnly Property Count As Integer
Eigenschaftswert
Die Anzahl der Elemente, die in der Gruppe enthalten sind.
Implementiert
Beispiele
Im folgenden Beispiel wird das Erstellen, Auffüllen und Bearbeiten von zwei HashSet<T> Objekten veranschaulicht. In diesem Beispiel werden sowohl der Inhalt des Satzes als Count auch die Anzeige auf der Konsole angezeigt.
HashSet<int> evenNumbers = new HashSet<int>();
HashSet<int> oddNumbers = new HashSet<int>();
for (int i = 0; i < 5; i++)
{
// Populate numbers with just even numbers.
evenNumbers.Add(i * 2);
// Populate oddNumbers with just odd numbers.
oddNumbers.Add((i * 2) + 1);
}
Console.Write("evenNumbers contains {0} elements: ", evenNumbers.Count);
DisplaySet(evenNumbers);
Console.Write("oddNumbers contains {0} elements: ", oddNumbers.Count);
DisplaySet(oddNumbers);
// Create a new HashSet populated with even numbers.
HashSet<int> numbers = new HashSet<int>(evenNumbers);
Console.WriteLine("numbers UnionWith oddNumbers...");
numbers.UnionWith(oddNumbers);
Console.Write("numbers contains {0} elements: ", numbers.Count);
DisplaySet(numbers);
void DisplaySet(HashSet<int> collection)
{
Console.Write("{");
foreach (int i in collection)
{
Console.Write(" {0}", i);
}
Console.WriteLine(" }");
}
/* This example produces output similar to the following:
* evenNumbers contains 5 elements: { 0 2 4 6 8 }
* oddNumbers contains 5 elements: { 1 3 5 7 9 }
* numbers UnionWith oddNumbers...
* numbers contains 10 elements: { 0 2 4 6 8 1 3 5 7 9 }
*/
let displaySet (collection: HashSet<int>) =
printf "{"
for i in collection do
printf $" {i}"
printfn " }"
let evenNumbers = HashSet<int>()
let oddNumbers = HashSet<int>()
for i = 0 to 4 do
// Populate numbers with just even numbers.
evenNumbers.Add(i * 2) |> ignore
// Populate oddNumbers with just odd numbers.
oddNumbers.Add(i * 2 + 1) |> ignore
printf $"evenNumbers contains {evenNumbers.Count} elements: "
displaySet evenNumbers
printf $"oddNumbers contains {oddNumbers.Count} elements: "
displaySet oddNumbers
// Create a new HashSet populated with even numbers.
let numbers = HashSet<int> evenNumbers
printfn "numbers UnionWith oddNumbers..."
numbers.UnionWith oddNumbers
printf $"numbers contains {numbers.Count} elements: "
displaySet numbers
// This example produces output similar to the following:
// evenNumbers contains 5 elements: { 0 2 4 6 8 }
// oddNumbers contains 5 elements: { 1 3 5 7 9 }
// numbers UnionWith oddNumbers...
// numbers contains 10 elements: { 0 2 4 6 8 1 3 5 7 9 }
Imports System.Collections.Generic
Class Program
Shared Sub Main()
Dim evenNumbers As HashSet(Of Integer) = New HashSet(Of Integer)()
Dim oddNumbers As HashSet(Of Integer) = New HashSet(Of Integer)()
For i As Integer = 0 To 4
' Populate evenNumbers with only even numbers.
evenNumbers.Add(i * 2)
' Populate oddNumbers with only odd numbers.
oddNumbers.Add((i * 2) + 1)
Next i
Console.Write("evenNumbers contains {0} elements: ", evenNumbers.Count)
DisplaySet(evenNumbers)
Console.Write("oddNumbers contains {0} elements: ", oddNumbers.Count)
DisplaySet(oddNumbers)
' Create a new HashSet populated with even numbers.
Dim numbers As HashSet(Of Integer) = New HashSet(Of Integer)(evenNumbers)
Console.WriteLine("numbers UnionWith oddNumbers...")
numbers.UnionWith(oddNumbers)
Console.Write("numbers contains {0} elements: ", numbers.Count)
DisplaySet(numbers)
End Sub
Private Shared Sub DisplaySet(ByVal collection As HashSet(Of Integer))
Console.Write("{")
For Each i As Integer In collection
Console.Write(" {0}", i)
Next i
Console.WriteLine(" }")
End Sub
End Class
' This example produces output similar to the following:
' evenNumbers contains 5 elements: { 0 2 4 6 8 }
' oddNumbers contains 5 elements: { 1 3 5 7 9 }
' numbers UnionWith oddNumbers...
' numbers contains 10 elements: { 0 2 4 6 8 1 3 5 7 9 }
Hinweise
Die Kapazität eines HashSet<T> Objekts ist die Anzahl der Elemente, die das Objekt enthalten kann. Die Kapazität eines HashSet<T> Objekts erhöht sich automatisch, wenn dem Objekt Elemente hinzugefügt werden.
Die Kapazität ist immer größer oder gleich Count. Wenn Count die Kapazität beim Hinzufügen von Elementen überschritten wird, wird die Kapazität auf die erste Primzahl festgelegt, die größer als doppelt die vorherige Kapazität ist.
Das Abrufen des Werts dieser Eigenschaft ist ein O(1)-Vorgang.