SortedDictionary(Of TKey, TValue).Item Property
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Gets or sets the value associated with the specified key.
Assembly: System (in System.dll)
Parameters
- key
- Type: TKey
The key of the value to get or set.
Property Value
Type: TValueThe value associated with the specified key. If the specified key is not found, a get operation throws a KeyNotFoundException, and a set operation creates a new element with the specified key.
Implements
IDictionary(Of TKey, TValue).Item(TKey)| Exception | Condition |
|---|---|
| ArgumentNullException | key is Nothing. |
| KeyNotFoundException | The property is retrieved and key does not exist in the collection. |
This property provides the ability to access a specific element in the collection by using the following C# syntax: myCollection[key] (myCollection(key) in Visual Basic).
You can also use the Item property to add new elements by setting the value of a key that does not exist in the SortedDictionary(Of TKey, TValue); for example, myCollection["myNonexistentKey"] = myValue. However, if the specified key already exists in the SortedDictionary(Of TKey, TValue), setting the Item property overwrites the old value. In contrast, the Add method does not modify existing elements.
A key cannot be Nothing, but a value can be, if the value type TValue is a reference type.
The C# language uses the [d4f827fe-4710-410b-89b8-867dad44b8a3] keyword to define the indexers instead of implementing the Item property. Visual Basic implements Item as a default property, which provides the same indexing functionality.
Getting the value of this property is an O(log n) operation; setting the property is also an O(log n) operation.
The following code example uses the Item property (the indexer in C#) to retrieve values, demonstrating that a KeyNotFoundException is thrown when a requested key is not present, and showing that the value associated with a key can be replaced.
The example also shows how to use the TryGetValue method as a more efficient way to retrieve values if a program often must try key values that are not in the dictionary.
This code example is part of a larger example provided for the SortedDictionary(Of TKey, TValue) class.