SortedList.Item[Object] Property

Definition

Gets or sets the value associated with a specific key in a SortedList object.

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

Parameters

key
Object

The key associated with the value to get or set.

Property Value

The value associated with the key parameter in the SortedList object, if key is found; otherwise, null.

Implements

Exceptions

key is null.

The property is set and the SortedList object is read-only.

-or-

The property is set, key does not exist in the collection, and the SortedList has a fixed size.

There is not enough available memory to add the element to the SortedList.

The comparer throws an exception.

Remarks

You can use the Item[] property to access a specific element in a collection by specifying the following syntax: myCollection[key].

You can also use this property to add new elements by setting the value of a key that does not exist in the SortedList object (for example, myCollection["myNonexistentKey"] = myValue). However, if the specified key already exists in the SortedList, setting the Item[] property overwrites the old value. In contrast, the Add method does not modify existing elements.

A key cannot be null, but a value can be. To distinguish between null that is returned because the specified key is not found and null that is returned because the value of the specified key is null, use the Contains method or the ContainsKey method to determine if the key exists in the list.

The elements of a SortedList are sorted by the keys either according to a specific IComparer implementation specified when the SortedList is created or according to the IComparable implementation provided by the keys themselves.

The C# language uses the this keyword to define the indexers instead of implementing the Keys property. Visual Basic implements Item[] as a default property, which provides the same indexing functionality.

Retrieving the value of this property is an O(log n) operation, where n is Count. Setting the property is an O(log n) operation if the key is already in the SortedList. If the key is not in the list, setting the property is an O(n) operation for unsorted data, or O(log n) if the new element is added at the end of the list. If insertion causes a resize, the operation is O(n).

Applies to

See also