Dictionary in C#
C #:
We can also pronounce C # programming language as "C-Sharp programming language. It is a Microsoft-developed object-oriented programming language that utilizes the.NET Framework.
C # is related to other widely used languages like C++ and Java and has roots in the C family. In 2002, the initial version was made available. In September 2019, C # 8 is one of the most recent version which was made available.
C # programming language is among the most widely used programming languages worldwide. It is simple to use and simple to learn. Huge community support exists for it. C # programming language is an object-oriented language that provides programmers with a clear structure and enables code reuse, which lowers development costs.
Because C # is so similar to C, C++, and Java, programmers can easily switch from one to the other. One of the most popular languages for developing system backends is C # programming language. It is as a result of its amazing features, including Windows server automation.
Dictionary in C #:
A generic collection in C# called Dictionary is typically used to store key/value pairs. Dictionary functions quite similarly to non-generic hashtables. The fact that Dictionary is generic in nature is an advantage.
The definition of dictionary can also be defined as system . collection . generic namespace. Because of its dynamic nature, the dictionary's size expands to meet demand.
The Dictionary class implements the IDictionary < TKey , TValue > Interface and the IReadOnlyCollection < KeyValuePair TKey , TValue >> interface. Interface IReadOnlyDictionary < TKey , TValue > a dictionary of interface terms
The value in a dictionary can be null, but not the key. A dictionary requires a unique key. If you try to utilise a duplicate key, the compiler will throw an exception because it is not permitted.
You can only store the same types of components in a dictionary. The number of elements that a dictionary can store is referred to as its capacity.
Creating Dictionary :
We know that the dictionary class has seven constructors, we only use the dictionary TKey , TValue ( ) function Object ( ) here.
Dictionary TKey , TValue > ( ) :
Using this function Object ( ) a dictionary TKey , TValue > instance is created that is empty and has the default initial capacity , and employs the default equality comparer for the key type.
Syntax to define a dictionary :
Dictionary < data type 1 , data type 2 > variable = new Dictionary < data type 1 , data type 2 > ( ) ;
We can access the elements in a dictionary in three ways. They are:
- Using foreach loop
- Using for loop
- Using index
Now let us see few examples using the following code as show below :
In this example we can see accessing of elements using for each loop.
Example 1 :
using System;
using System . Collections . Generic ;
public class Demo
{
public static void Main ( string args [ ] )
{
Dictionary < string , string > names = new Dictionary < string , string > ( ) ;
names . Add ( “ 1A “ , “ Om “ );
names . Add ( “ 1B “ , “ Sai “ );
names . Add ( “ 1C “ , “ Ram “ );
names . Add ( “ 1D “ , “ Kiran “ );
names . Add ( “ 1E “ , “ Latha “ );
foreach ( KeyValuePair < string , string > kv in names)
{
Console . WriteLine ( kv . Key + “ “ + kv . Value ) ;
}
}
}
Output 1:
1A Om
1B Sai
1C Ram
1D Kiran
1E Latha
In this example we can see accessing of elements using for loop and also indexing.
Example 2:
using System;
using System . Linq;
using System . Collections . Generic;
public class Demo2
{
public static void PrintDict < K , V > ( Dictionary < K , V > dict )
{
for ( int i = 0 ; i < dict . Count ; i++ )
{
KeyValuePair < K , V > name = dict . ElementAt ( i );
Console . WriteLine ( name . Key + “ : “ + name . Value ) ;
}
}
public static void Main ( )
{
Dictionary < string , string > dict = new Dictionary < string , string >
{
{ “ Key 1 “ , “ val1 “ } , { “ Key 2 “ , “ val2 “ }
};
PrintDict ( dict );
}
}
Output 2:
Key 1 : val 1
Key 2 : val 2