Dictionary

Dictionary არის Hashtable-ს მსგავსი კოლექცია იმ განსხვავებით, რომ მისი გამოყენება შევიძლია Generic ცვლადებთან ერთად და აქედან გამომდინა აღარც Boxing Unboxing იქნება საჭირო (გავიხსენოთ, რომ Hashtable -ს შემთხვევაში კოლექციის წევრები object-ის ტიპისაა). Hashtable-სა და Dictionary–ს შორის განსხვავების კარგათ დასანახად განვიხილოთ  მაგალითი ორივე შემთხვევაში. დავადგინოთ თვითოეული სიბოლოს რაოდენობა სტრინგის ტიპის სიმრავლეში.

======================== HASHTABLE ===========================

using System;
using System.Collections;
using System.Linq;
using System.Text;

namespace HashTable_CountLetter {
class Program {
static void Main(string[] args) {
string s = @”jfdg;aejhkdfgjslkmoiwjilkmdslvkmlk
[sdenvflkndlkvcnmjnkdnfvhkrkh”
;
int value = 0;
Hashtable hT = new Hashtable();
for(int i = 0; i < s.Length; i++) {
if(hT.ContainsKey(s[i])) {
value = Convert.ToInt32(hT[s[i]]);
value++;
hT[s[i]] = value;
} else {
hT.Add(s[i], 1);
}
}

foreach(var ky in hT.Keys) {
Console.WriteLine(“{0} , {1}”,ky, hT[ky]);
}
Console.ReadLine();
}
}
}

* This source code was highlighted with Source Code Highlighter.

======================== DICTIONARY===========================

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace HashTable_CountLetter {
class Program {
static void Main(string[] args) {
string s = @”jfdg;aejhkdfgjslkmoiwjilkmdslvkmlk
[sdenvflkndlkvcnmjnkdnfvhkrkh”
;
Dictionary<char, int> hT = new Dictionary<char, int>();
for(int i = 0; i < s.Length; i++) {
if(hT.ContainsKey(s[i])) {
++hT[s[i]];
} else {
hT[s[i]] = 1;
}
}

foreach(var ky in hT.Keys) {
Console.WriteLine(“{0} , {1}”, ky, hT[ky]);
}
Console.ReadLine();
}
}
}

* This source code was highlighted with Source Code Highlighter.

Advertisements
This entry was posted in C# Programming. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s