C# | Get or set the value associated with specified key in SortedList - GeeksforGeeks

01 Feb, 2019
SortedList.Item[Object] Property is used to get and set the value associated with a specific key in a SortedList object.
Syntax:
public virtual object this[object key] { get; set; }
Here, the key is associated with the value to get or set. It is of the object type.
Return Value: This property returns the value associated with the key parameter in the SortedList object if the key is found otherwise it returns null.
Exceptions:
ArgumentNullException: If the key is null.
NotSupportedException: If the property is set and the SortedList object is read-only or if the property is set, the key doesn’t exist in the collection and the SortedList has a fixed size.
OutOfMemoryException: If there is not enough available memory to add the element to the SortedList.
InvalidOperationException: If the comparer throws an exception.
Below programs illustrate the use of above-discussed property:
Example 1:
// C# code to Gets or sets the value // associated with the specified key using System; using System.Collections;   class GFG {       // Driver code     public static void Main()     {           // Creating a SortedList         SortedList mylist = new SortedList();           // Adding elements in SortedList         mylist.Add("g", "geeks");         mylist.Add("c", "c++");         mylist.Add("d", "data structures");         mylist.Add("q", "quiz");           // Get a collection of the keys.        ICollection c = mylist.Keys;           // Displaying the contents         foreach(string str in c)             Console.WriteLine(str + ": " + mylist[str]);           // Setting the value associated with key "c"         mylist["c"] = "C#";           Console.WriteLine("Updated Values:");           // Displaying the contents         foreach(string str in c)             Console.WriteLine(str + ": " + mylist[str]);     } } 
c: c++
d: data structures
g: geeks
q: quiz
Updated Values:
c: C#
d: data structures
g: geeks
q: quiz

Example 2:
// C# code to Gets or sets the value // associated with the specified key using System; using System.Collections;   class GFG {       // Driver code     public static void Main()     {           // Creating a SortedList         SortedList mylist = new SortedList();           // Adding elements in SortedList         mylist.Add("4", "Even");         mylist.Add("9", "Odd");         mylist.Add("5", "Odd and Prime");         mylist.Add("2", "Even and Prime");           // Get a collection of the keys.        ICollection c = mylist.Keys;           // Displaying the contents         foreach(string str in c)             Console.WriteLine(str + ": " + mylist[str]);           // Setting the value associated         // with key "56" which is not present          // will result in the creation of          // new key and value will be set which          // is given by the user         mylist["56"] = "New Value";             Console.WriteLine("Updated Values:");             // Displaying the contents         foreach(string str in c)             Console.WriteLine(str + ": " + mylist[str]);                                                   // Setting the value associated         // with key "28" which is not present          // will result in the creation of          // new key and its value can be null        mylist["28"] = null;             Console.WriteLine("Updated Values:");             // Displaying the contents         foreach(string str in c)             Console.WriteLine(str + ": " + mylist[str]);     } } 
2: Even and Prime
4: Even
5: Odd and Prime
9: Odd
Updated Values:
2: Even and Prime
4: Even
5: Odd and Prime
56: New Value
9: Odd
Updated Values:
2: Even and Prime
28: 
4: Even
5: Odd and Prime
56: New Value
9: Odd

Note:
This property returns the value associated with the specific key. If that key is not found, and one is trying to get that, then this property will return null and if trying to set, it will result into the creation of a new element with the specified key.
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.
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).
Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.collections.sortedlist.item?view=netframework-4.7.2
CSharp-Collections-Namespace
CSharp-Collections-SortedList
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
C# | Delegates
C# | Method Overriding
C# | Abstract Classes
Difference between Ref and Out keywords in C#
C# | Replace() Method
Extension Method in C#
C# | String.IndexOf( ) Method | Set - 1
C# | Class and Object
C# | Constructors
Introduction to .NET Framework