SortedDictionary<TKey, TValue>.Add Method (TKey, TValue)
![]() |
---|
The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience. |
Adds an element with the specified key and value into the SortedDictionary<TKey, TValue>.
Assembly: System (in System.dll)
Exception | Condition |
---|---|
ArgumentNullException | key is null. |
ArgumentException | An element with the same key already exists in the SortedDictionary<TKey, TValue>. |
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<TKey, TValue>; for example, myCollection["myNonexistentKey"] = myValue (in Visual Basic, myCollection("myNonexistantKey") = myValue). However, if the specified key already exists in the SortedDictionary<TKey, TValue>, setting the Item property overwrites the old value. In contrast, the Addmethod throws an exception if an element with the specified key already exists.
A key cannot be null, but a value can be, if the value type TValue is a reference type.
This method is an O(log n) operation, where n is Count.
The following code example creates an empty SortedDictionary<TKey, TValue> of strings with string keys and uses the Add method to add some elements. The example demonstrates that the Add method throws an ArgumentException when attempting to add a duplicate key.
This code example is part of a larger example provided for the SortedDictionary<TKey, TValue> class.
// Create a new sorted dictionary of strings, with string // keys. SortedDictionary<string, string> openWith = new SortedDictionary<string, string>(); // Add some elements to the dictionary. There are no // duplicate keys, but some of the values are duplicates. openWith.Add("txt", "notepad.exe"); openWith.Add("bmp", "paint.exe"); openWith.Add("dib", "paint.exe"); openWith.Add("rtf", "wordpad.exe"); // The Add method throws an exception if the new key is // already in the dictionary. try { openWith.Add("txt", "winword.exe"); } catch (ArgumentException) { Console.WriteLine("An element with Key = \"txt\" already exists."); }
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1