Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Propiedad IDictionary.Item (Object)

 

Publicado: octubre de 2016

Obtiene o establece el elemento con la clave especificada.

Espacio de nombres:   System.Collections
Ensamblado:  mscorlib (en mscorlib.dll)

object this[
	object key
] { get; set; }

Parámetros

key
Type: System.Object

La clave del elemento que se obtiene o establece.

Valor de propiedad

Type: System.Object

Elemento con la clave especificada o null si la clave no existe.

Exception Condition
ArgumentNullException

El valor de key es null.

NotSupportedException

La propiedad está establecida y la IDictionary objeto es de solo lectura.

O bien

La propiedad está establecida, key no existe en la colección y el IDictionary tiene un tamaño fijo.

Esta propiedad permite obtener acceso a un elemento específico de la colección utilizando la sintaxis siguiente: myCollection[key].

También puede utilizar el Item propiedad para agregar nuevos elementos estableciendo el valor de una clave que no existe en el diccionario (por ejemplo, myCollection["myNonexistentKey"] = myValue). Sin embargo, si la clave especificada ya existe en el diccionario, al establecer el Item propiedad sobrescribe el valor anterior. En cambio, el Add método no modifica los elementos existentes.

Las implementaciones pueden variar en si permiten que la clave sea null.

El lenguaje C# utiliza la thisthis (Referencia de C#) palabra clave para definir los indizadores en lugar de implementar la Item propiedad. Visual Basic implementa Item como propiedad predeterminada, lo que proporciona la misma funcionalidad de indización.

En el ejemplo de código siguiente se muestra cómo implementar el Item propiedad. Este ejemplo de código forma parte de un ejemplo mayor proporcionado para el IDictionary clase.

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);
        }
    }
}

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 1.1
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: