Dictionary<'TKey, 'TValue> Constructor ()


Initializes a new instance of the Dictionary<'TKey, 'TValue> class that is empty, has the default initial capacity, and uses the default equality comparer for the key type.

Namespace:   System.Collections.Generic
Assembly:  mscorlib (in mscorlib.dll)

new : unit -> Dictionary

Every key in a Dictionary<'TKey, 'TValue> must be unique according to the default equality comparer.

Dictionary<'TKey, 'TValue> requires an equality implementation to determine whether keys are equal. This constructor uses the default generic equality comparer, EqualityComparer<'T>.Default. If type TKey implements the System.IEquatable<'T> generic interface, the default equality comparer uses that implementation. Alternatively, you can specify an implementation of the IEqualityComparer<'T> generic interface by using a constructor that accepts a comparer parameter.


If you can estimate the size of the collection, using a constructor that specifies the initial capacity eliminates the need to perform a number of resizing operations while adding elements to the Dictionary<'TKey, 'TValue>.

This constructor is an O(1) operation.

The following code example creates an empty Dictionary<'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 Dictionary<'TKey, 'TValue> class.

No code example is currently available or this language may not be supported.

Universal Windows Platform
Available since 8
.NET Framework
Available since 2.0
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top