Introduction
A Dictionary class represents a dictionary in C# that is
used to represent a collection of keys and values pair of data. This article
demonstrates how to use a dictionary in C#.
Creating a Dictionary
The Dictionary class is a generic class and can store any
data types. This class is defined in the System.Collections.Generic namespace. Before
you use a Dictionary class in your code, you must import the
System.Collections.Generic namespace using the following line.
using System.Collections.Generic;
The Dictionary class constructor takes two parameters (generic type), first for the type of the key and second for the type of the value. The following code snippet creates a Dictionary where keys are strings and values are short.
Dictionary<string, Int16> AuthorList = new Dictionary<string, Int16>();
Add and Read Data
As other collection
classes, the Dictionary class has Add, Remove, Clear and other collection
methods. The Key and Value property are used to extract a key and a value from
an item in a Dictionary.
The following code
snippet creates a Dictionary, adds some data to it and reads data back.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections.Generic;
namespace DictionarySample
{
class Program
{
static void Main(string[] args)
{
Dictionary<string,
Int16> AuthorList = new Dictionary<string, Int16>();
AuthorList.Add("Mahesh Chand",
35);
AuthorList.Add("Mike Gold",
25);
AuthorList.Add("Praveen Kumar",
29);
AuthorList.Add("Raj Beniwal",
21);
AuthorList.Add("Dinesh Beniwal",
84);
// Read all data
Console.WriteLine("Authors
List");
foreach( KeyValuePair<string, Int16>
author in AuthorList )
{
Console.WriteLine("Key = {0}, Value = {1}",
author.Key, author.Value);
}
Console.ReadKey();
}
}
}
Download Free Book
Download this free E-book: Programming Dictionary in C#
Properties
The Count property gets the number of key/value pairs in a Dictionary. The following code snippet display number of items in a dictionary.
Console.WriteLine("Count: {0}", AuthorList.Count);
|
The Item property gets and sets the value associated with the specified key. The following code snippet sets and gets an items value.
// Set Item value AuthorList["Mahesh Chand"] = 20; // Get Item value Int16 age = Convert.ToInt16(AuthorList["Mahesh Chand"]); |
The Keys property gets a collection containing the keys in the Dictionary. It returns an object of KeyCollection type. The following code snippet reads all keys in a Dictionary.
// Get and display keys Dictionary<string, Int16>.KeyCollection keys = AuthorList.Keys; foreach (string key in keys) { Console.WriteLine("Key: {0}", key); } |
The Values property gets a collection containing the values in the Dictionary. It returns an object of ValueCollection type. The following code snippet reads all values in a Dictionary.
// Get and display values Dictionary<string, Int16>.ValueCollection values = AuthorList.Values; foreach (Int16 val in values) { Console.WriteLine("Value: {0}", val); } |
Summary
In this article, we learned how to use a dictionary in C#.
Download Free Book
Download this free E-book: Programming Dictionary in C#