Hashtable.Add(Object, Object) Methode

Definitie

Voegt een element met de opgegeven sleutel en waarde toe aan de 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)

Parameters

key
Object

De sleutel van het element dat moet worden toegevoegd.

value
Object

De waarde van het element dat moet worden toegevoegd. De waarde kan zijn null.

Implementeringen

Uitzonderingen

key is null.

Er bestaat al een element met dezelfde sleutel in de Hashtable.

Het Hashtable is alleen-lezen.

– of –

De Hashtable heeft een vaste grootte.

Voorbeelden

In het volgende voorbeeld ziet u hoe u elementen toevoegt aan de 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
'

Opmerkingen

Een sleutel kan niet zijn null, maar een waarde kan zijn.

Een object dat geen correlatie heeft tussen de status en de hashcodewaarde, moet doorgaans niet worden gebruikt als sleutel. Tekenreeksobjecten zijn bijvoorbeeld beter dan StringBuilder-objecten voor gebruik als sleutels.

U kunt de Item[] eigenschap ook gebruiken om nieuwe elementen toe te voegen door de waarde in te stellen van een sleutel die niet bestaat in de Hashtable; bijvoorbeeld myCollection["myNonexistentKey"] = myValue. Als de opgegeven sleutel echter al bestaat in de Hashtableeigenschap, wordt de oude waarde overschreven door de Item[] eigenschap in te stellen. De methode wijzigt daarentegen Add geen bestaande elementen.

Als Count de capaciteit van de methode kleiner is dan de Hashtablecapaciteit, is deze methode een O(1) bewerking. Als de capaciteit moet worden verhoogd voor het nieuwe element, wordt deze methode een O(n) bewerking, waar n is Count.

Van toepassing op

Zie ook