IDictionary.Item[Object] Eigenschaft

Definition

Ruft das Element mit dem angegebenen Schlüssel ab oder legt es fest.

public:
 property System::Object ^ default[System::Object ^] { System::Object ^ get(System::Object ^ key); void set(System::Object ^ key, System::Object ^ value); };
public object this[object key] { get; set; }
member this.Item(obj) : obj with get, set
Default Public Property Item(key As Object) As Object

Parameter

key
Object

Der Schlüssel des Elements, das abgerufen oder festgelegt werden soll.

Eigenschaftswert

Das Element mit dem angegebenen Schlüssel oder null wenn der Schlüssel nicht vorhanden ist.

Ausnahmen

key ist null.

Die Eigenschaft wird festgelegt, und das IDictionary Objekt ist schreibgeschützt.

-oder-

Die Eigenschaft ist festgelegt, key ist in der Auflistung nicht vorhanden und hat IDictionary eine feste Größe.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die Item[] Eigenschaft implementiert wird. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die IDictionary Klasse bereitgestellt wird.

public object this[object key]
{
    get
    {
        // If this key is in the dictionary, return its value.
        Int32 index;
        if (TryGetIndexOfKey(key, out index))
        {
            // The key was found; return its value.
            return items[index].Value;
        }
        else
        {
            // The key was not found; return null.
            return null;
        }
    }

    set
    {
        // If this key is in the dictionary, change its value.
        Int32 index;
        if (TryGetIndexOfKey(key, out index))
        {
            // The key was found; change its value.
            items[index].Value = value;
        }
        else
        {
            // This key is not in the dictionary; add this key/value pair.
            Add(key, value);
        }
    }
}
Public Property Item(ByVal key As Object) As Object Implements IDictionary.Item
    Get

        ' If this key is in the dictionary, return its value.
        Dim index As Integer
        If TryGetIndexOfKey(key, index) Then

            ' The key was found return its value.
            Return items(index).Value
        Else

            ' The key was not found return null.
            Return Nothing
        End If
    End Get

    Set(ByVal value As Object)
        ' If this key is in the dictionary, change its value. 
        Dim index As Integer
        If TryGetIndexOfKey(key, index) Then

            ' The key was found change its value.
            items(index).Value = value
        Else

            ' This key is not in the dictionary add this key/value pair.
            Add(key, value)
        End If
    End Set
End Property

Hinweise

Diese Eigenschaft bietet die Möglichkeit, mithilfe der folgenden Syntax auf ein bestimmtes Element in der Auflistung zuzugreifen: myCollection[key]

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

Implementierungen können variieren, ob sie den Schlüssel zulassen null.

Die C#-Sprache verwendet diesesthis Schlüsselwort, um die Indexer zu definieren, anstatt die Item[] Eigenschaft zu implementieren. Visual Basic wird als Standardeigenschaft implementiert Item[] , die die gleiche Indizierungsfunktion bereitstellt.

Gilt für:

Weitere Informationen