You already have a System.Collections.Generic namespace, but a Hastable is not part of this collection - it's part of the normal Collections namespace.
Hashtable in C# represents a collection of key/value pairs which maps keys to value. Any non-null object can be used as a key but a value can. We can retrieve items from hashTable to provide the key . Both keys and values are Objects.
// Creating an object of HashTable
Operation on HashTable
In above program I entered number of day in week is 7. After it will ask enter all day one by one
and after that it will print instructions and ask relevant key/value to enter
Output:-
Hashtable in C# represents a collection of key/value pairs which maps keys to value. Any non-null object can be used as a key but a value can. We can retrieve items from hashTable to provide the key . Both keys and values are Objects.
// Creating an object of HashTable
Hashtable ht = new Hashtable();
1. Add: Its use to add a pair of value in HashTable
Syntex- ht.Add(keyObj, valueObj)
Example- ht.Add(1, Monday)
2. ContainsKey: Check if a specified key exist or not and retruns boolean value
Syntex- ht.ContainsKey(keyObj)
Example- bool IsExist = ht.ContainsKey(1))
Return value- True
3. ContainsValue: Check if a specified Value exist or not and retruns boolean value
Syntex- ht.ContainsValue(valueObj)
Example- bool IsExist = ht.ContainsValue(Monday))
Return value- True
4. Remove: Remove the specified Key and corresponding Value if exist
Syntex - ht.Remove(keyObj);
Example- ht.Remove(1);
Source Code Example:-
In below example I explained each above operation
using System;
using System.Linq;
using System.Text;
using System.Globalization;
using System.Collections;
Namespace ConsoleDemoApp
{
Class Test
{
/* program to implement Dictionay in c# */
public static void Main(string[]
args)
{
int inputNum=0;
Console.Write("\nEnter
number of day in a Week: ");
inputNum= int.Parse(Console.ReadLine());
HashTableExample ht = new
HashTableExample();
ht.HT_Operations(inputNum);
Console.ReadKey();
}
}
//
Public class HashTableExample
{
Public void
HT_Operations(int inputNum)
{
string dayName;
Hashtable WeekDays = new Hashtable();
for(int i=0;
i<inputNum; i++)
{
Console.Write("\nEnter {0} day of Week: ", i+1);
dayName = Console.ReadLine();
WeekDays.Add(i,dayName);
Console.Write("\n");
}
// print all
Console.Write("\nEntered
Days are: \n");
foreach(DictionaryEntry
day in WeekDays)
{
Console.Write(day.Value);
Console.Write("\n");
}
//print a single day
Console.Write(WeekDays[3].ToString());
Console.Write("\n");
//Search an Item by value
Console.Write("\nEntered
a Days for search: \n");
dayName = Console.ReadLine();
if (WeekDays.ContainsValue(dayName))
{
Console.Write("\n {0} is Found in the Dictionay: \n", dayName);
}
else
{
Console.Write("Not Found!");
}
//Search an Item by key
Console.Write("\nEntered
a key for search: \n");
int key = int.Parse(Console.ReadLine());
if (WeekDays.ContainsKey(key))
{
Console.Write("\nFor entered key {0} the day name is: {1} \n", key,
WeekDays[key].ToString());
}
else
{
Console.Write("Not Found!");
}
//now remove an Item using key
Console.Write("\nEntered
a key to remove a Day: \n");
key = int.Parse(Console.ReadLine());
if (WeekDays.ContainsKey(key))
{
Console.Write("\nThe Day {0} has been removed: \n",
WeekDays[key].ToString());
WeekDays.Remove(key);
}
else
{
Console.Write("No Day exits at key:
{0}", key);
}
// print the remaining days
Console.Write("\nRemaing
Days are: \n");
foreach(DictionaryEntry
day in WeekDays)
{
Console.Write(day.Key + " - " + day.Value);
Console.Write("\n");
}
}
}
}
No comments:
Post a Comment