Hashtable.Add(Object, Object) Methode

Definition

Fügt ein Element mit dem angegebenen Schlüssel und Wert in den Hashtable.

public:
 virtual void Add(System::Object ^ key, System::Object ^ value);
public virtual void Add(object key, object value);
abstract member Add : obj * obj -> unit
override this.Add : obj * obj -> unit
Public Overridable Sub Add (key As Object, value As Object)

Parameter

key
Object

Der Schlüssel des hinzuzufügenden Elements.

value
Object

Der Wert des hinzuzufügenden Elements. Der Wert kann sein null.

Implementiert

Ausnahmen

key ist null.

Ein Element mit demselben Schlüssel ist bereits in der Hashtable.

Dies Hashtable ist schreibgeschützt.

-oder-

Die Hashtable Größe hat eine feste Größe.

Beispiele

Das folgende Beispiel zeigt, wie Elemente zum Hinzufügen von Elementen zum Hashtable.

using System;
using System.Collections;
public class SamplesHashtable
{

   public static void Main()
   {
      // Creates and initializes a new Hashtable.
      var myHT = new Hashtable();
      myHT.Add("one", "The");
      myHT.Add("two", "quick");
      myHT.Add("three", "brown");
      myHT.Add("four", "fox");

      // Displays the Hashtable.
      Console.WriteLine("The Hashtable contains the following:");
      PrintKeysAndValues(myHT);
   }

   public static void PrintKeysAndValues( Hashtable myHT )
   {
      Console.WriteLine("\t-KEY-\t-VALUE-");
      foreach (DictionaryEntry de in myHT)
         Console.WriteLine($"\t{de.Key}:\t{de.Value}");
      Console.WriteLine();
   }
}
/*
This code produces the following output.

The Hashtable contains the following:
        -KEY-   -VALUE-
        two:    quick
        three:  brown
        four:   fox
        one:    The
*/
Imports System.Collections

Public Class SamplesHashtable

    Public Shared Sub Main()

        ' Creates and initializes a new Hashtable.
        Dim myHT As New Hashtable()
        myHT.Add("one", "The")
        myHT.Add("two", "quick")
        myHT.Add("three", "brown")
        myHT.Add("four", "fox")

        ' Displays the Hashtable.
        Console.WriteLine("The Hashtable contains the following:")
        PrintKeysAndValues(myHT)

    End Sub

    Public Shared Sub PrintKeysAndValues(myHT As Hashtable)
        Console.WriteLine(vbTab + "-KEY-" + vbTab + "-VALUE-")
        For Each de As DictionaryEntry In myHT
            Console.WriteLine(vbTab + "{0}:" + vbTab + "{1}", de.Key, de.Value)
        Next
        Console.WriteLine()
    End Sub

End Class


' This code produces the following output.
' 
' The Hashtable contains the following:
'         -KEY-   -VALUE-
'         two:    quick
'         one:    The
'         three:  brown
'         four:   fox
'

Hinweise

Ein Schlüssel kann nicht sein null, aber ein Wert kann sein.

Ein Objekt, das keine Korrelation zwischen seinem Zustand und seinem Hashcodewert aufweist, sollte in der Regel nicht als Schlüssel verwendet werden. Beispielsweise sind Zeichenfolgenobjekte besser als StringBuilder-Objekte für die Verwendung als Schlüssel.

Sie können die Item[] Eigenschaft auch verwenden, um neue Elemente hinzuzufügen, indem Sie den Wert eines Schlüssels festlegen, myCollection["myNonexistentKey"] = myValueder Hashtablenicht im Schlüssel vorhanden ist, z. B. . . Wenn der angegebene Schlüssel jedoch bereits im HashtableBereich vorhanden ist, überschreibt das Festlegen der Item[] Eigenschaft den alten Wert. Im Gegensatz dazu ändert die Add Methode keine vorhandenen Elemente.

Wenn Count die Kapazität der Methode kleiner als die Kapazität ist Hashtable, handelt es sich bei dieser Methode um einen O(1) Vorgang. Wenn die Kapazität erhöht werden muss, um das neue Element aufzunehmen, wird diese Methode zu einem O(n) Vorgang, in dem n dies der Fall ist Count.

Gilt für:

Weitere Informationen