IDictionary.Item[Object] IDictionary.Item[Object] IDictionary.Item[Object] IDictionary.Item[Object] Property

Definizione

Ottiene o imposta l'elemento con la chiave specificata.Gets or sets the element with the specified key.

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

Parametri

key
Object Object Object Object

Chiave dell'elemento da ottenere o impostare.The key of the element to get or set.

Valore della proprietà

Elemento con la chiave specificata oppure null se la chiave non esiste.The element with the specified key, or null if the key does not exist.

Eccezioni

La proprietà è impostata e l'oggetto IDictionary è in sola lettura.The property is set and the IDictionary object is read-only.

-oppure--or- La proprietà è impostata, key non esiste nella raccolta e IDictionary è di dimensioni fisse.The property is set, key does not exist in the collection, and the IDictionary has a fixed size.

Esempi

Nell'esempio di codice riportato di seguito viene illustrato Item[Object] come implementare la proprietà.The following code example demonstrates how to implement the Item[Object] property. Questo esempio di codice fa parte di un esempio più ampio fornito IDictionary per la classe.This code example is part of a larger example provided for the IDictionary class.

public:
    virtual property Object^ default[Object^]
    {
        Object^ get(Object^ key)
        {
            // If this key is in the dictionary, return its value.
            int index;
            if (TryGetIndexOfKey(key, &index))
            {
                // The key was found; return its value.
                return items[index]->Value;
            }
            else
            {
                // The key was not found; return null.
                return nullptr;
            }
        }

        void set(Object^ key, Object^ value)
        {
            // If this key is in the dictionary, change its value.
            int index;
            if (TryGetIndexOfKey(key, &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 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

Commenti

Questa proprietà consente di accedere a un elemento specifico della raccolta utilizzando la sintassi seguente: myCollection[key].This property provides the ability to access a specific element in the collection by using the following syntax: myCollection[key].

È anche possibile usare la Item[Object] proprietà per aggiungere nuovi elementi impostando il valore di una chiave che non esiste nel dizionario (ad esempio, myCollection["myNonexistentKey"] = myValue).You can also use the Item[Object] property to add new elements by setting the value of a key that does not exist in the dictionary (for example, myCollection["myNonexistentKey"] = myValue). Tuttavia, se la chiave specificata esiste già nel dizionario, l'impostazione della Item[Object] proprietà sovrascrive il valore precedente.However, if the specified key already exists in the dictionary, setting the Item[Object] property overwrites the old value. Al contrario, il Add metodo non modifica gli elementi esistenti.In contrast, the Add method does not modify existing elements.

Le implementazioni possono variare a seconda che consentano la nullchiave.Implementations can vary in whether they allow the key to be null.

Il C# linguaggio utilizza la thisparola chiave this per definire gli indicizzatori anziché implementare la Item[Object] proprietà.The C# language uses the thisthis keyword to define the indexers instead of implementing the Item[Object] property. In Visual Basic la proprietà Item[Object] viene implementata come predefinita per fornire la stessa funzionalità di indicizzazione.Visual Basic implements Item[Object] as a default property, which provides the same indexing functionality.

Si applica a

Vedi anche