C# | Insert into OrderedDictionary with key and value at specified index (original) (raw)
Last Updated : 01 Feb, 2019
OrderedDictionary.Insert(Int32, Object, Object) method is used to insert a new entry into the OrderedDictionary collection with the specified key and value at the specified index.Syntax:
public void Insert (int index, object key, object value);
Parameters:
index : It is the zero-based index at which the element should be inserted.key : It is the key of the entry to add.value : It is the value of the entry to add. The value can be null.
Exceptions:
- NotSupportedException : If the OrderedDictionary collection is read-only.
- ArgumentOutOfRangeException : If the index is out of range.
Below given are some examples to understand the implementation in a better way: Example 1:
CSHARP `
// C# code to insert entry into // OrderedDictionary with key and // value at the specified index using System; using System.Collections; using System.Collections.Specialized;
class GFG {
// Driver method
public static void Main()
{
// Creating a orderedDictionary named myDict
OrderedDictionary myDict = new OrderedDictionary();
// Adding key and value in myDict
myDict.Add("key1", "value1");
myDict.Add("key2", "value2");
myDict.Add("key3", "value3");
myDict.Add("key4", "value4");
myDict.Add("key5", "value5");
// Displaying the number of element initially
Console.WriteLine("Number of elements are : "
+ myDict.Count);
// Displaying the elements in myDict
foreach(DictionaryEntry de in myDict)
Console.WriteLine(de.Key + " -- " + de.Value);
// Inserting entry into OrderedDictionary
// with key and value at the specified index
myDict.Insert(2, "Geeks", "Noida");
// Displaying the number of element initially
Console.WriteLine("Number of elements are : "
+ myDict.Count);
// Displaying the elements in myDict
foreach(DictionaryEntry de in myDict)
Console.WriteLine(de.Key + " -- " + de.Value);
}
}
`
Output:
Number of elements are : 5 key1 -- value1 key2 -- value2 key3 -- value3 key4 -- value4 key5 -- value5 Number of elements are : 6 key1 -- value1 key2 -- value2 Geeks -- Noida key3 -- value3 key4 -- value4 key5 -- value5
Example 2:
CSHARP `
// C# code to insert entry into // OrderedDictionary with key and // value at the specified index using System; using System.Collections; using System.Collections.Specialized;
class GFG {
// Driver method
public static void Main()
{
// Creating a orderedDictionary named myDict
OrderedDictionary myDict = new OrderedDictionary();
// Adding key and value in myDict
myDict.Add("A", "Apple");
myDict.Add("B", "Banana");
myDict.Add("C", "Cat");
myDict.Add("D", "Dog");
// Displaying the number of element initially
Console.WriteLine("Number of elements are : "
+ myDict.Count);
// Displaying the elements in myDict
foreach(DictionaryEntry de in myDict)
Console.WriteLine(de.Key + " -- " + de.Value);
// Inserting entry into OrderedDictionary
// with key and value at the specified index
// This should raise "ArgumentOutOfRangeException"
// as index is out of range
myDict.Insert(10, "E", "Elephant");
// Displaying the number of element initially
Console.WriteLine("Number of elements are : "
+ myDict.Count);
// Displaying the elements in myDict
foreach(DictionaryEntry de in myDict)
Console.WriteLine(de.Key + " -- " + de.Value);
}
}
`
Runtime Error:
Unhandled Exception: System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values. Parameter name: index
Note:
- If the index parameter is equal to the number of entries in the OrderedDictionary collection, the key and value parameters are appended to the end of the collection.
- Entries that follow the insertion point move down to accommodate the new entry and the indexes of the moved entries are also updated.
Reference: