Hashtable.Add(Object, Object) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Lägger till ett element med den angivna nyckeln och värdet i 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)
Parametrar
- key
- Object
Nyckeln för elementet som ska läggas till.
- value
- Object
Värdet för elementet som ska läggas till. Värdet kan vara null.
Implementeringar
Undantag
key är null.
Det finns redan ett element med samma nyckel i Hashtable.
Exempel
I följande exempel visas hur du lägger till element i 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
'
Kommentarer
En nyckel kan inte vara null, men ett värde kan vara.
Ett objekt som inte har någon korrelation mellan dess tillstånd och dess hashkodvärde bör vanligtvis inte användas som nyckel. Strängobjekt är till exempel bättre än StringBuilder-objekt för användning som nycklar.
Du kan också använda Item[] egenskapen för att lägga till nya element genom att ange värdet för en nyckel som inte finns i Hashtable, till exempel myCollection["myNonexistentKey"] = myValue. Men om den angivna nyckeln redan finns i Hashtable, skriver egenskapen Item[] över det gamla värdet. Metoden ändrar däremot Add inte befintliga element.
Om Count är mindre än kapaciteten för Hashtableär den här metoden en O(1) åtgärd. Om kapaciteten behöver ökas för att hantera det nya elementet blir den här metoden en O(n) åtgärd, där n är Count.