IDictionary.Item[Object] Özellik

Tanım

Belirtilen anahtarla öğesini alır veya ayarlar.

C#
public object this[object key] { get; set; }
C#
public object? this[object key] { get; set; }

Parametreler

key
Object

Alınacak veya ayarlanacağı öğenin anahtarı.

Özellik Değeri

Belirtilen anahtara sahip öğe veya null anahtar yoksa.

Özel durumlar

key, null değeridir.

özelliği ayarlanır ve IDictionary nesne salt okunur olur.

-veya-

özelliği ayarlanır, key koleksiyonda yoktur ve sabit bir boyuta IDictionary sahiptir.

Örnekler

Aşağıdaki kod örneğinde özelliğin nasıl uygulandığı gösterilmektedir Item[] . Bu kod örneği, sınıfı için IDictionary sağlanan daha büyük bir örneğin parçasıdır.

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

Açıklamalar

Bu özellik, aşağıdaki söz dizimini kullanarak koleksiyondaki belirli bir öğeye erişme olanağı sağlar: myCollection[key].

Özelliğini, sözlükte Item[] bulunmayan bir anahtarın değerini ayarlayarak yeni öğeler eklemek için de kullanabilirsiniz (örneğin, myCollection["myNonexistentKey"] = myValue). Ancak, belirtilen anahtar sözlükte zaten varsa, özelliğini ayarlamak Item[] eski değerin üzerine yazar. Buna karşılık, Add yöntemi mevcut öğeleri değiştirmez.

Uygulamalar, anahtarın olmasına nullizin verip vermediklerine göre farklılık gösterebilir.

C# dili, özelliğini uygulamak Item[] yerine dizin oluşturucuları tanımlamak için bu anahtar sözcüğü kullanırthis. Visual Basic, aynı dizin oluşturma işlevini sağlayan varsayılan bir özellik olarak uygular Item[] .

Şunlara uygulanır

Ürün Sürümler
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Ayrıca bkz.