Dictionary در سی شارپ
سلام دوستان همیشگی در این سری از آموزش برنامه نویسی سی شارپ به آموزش کلاس Dictionary در سی شارپ می پردازیم شاید بپرسید Dictionary چیست ؟ در ادامه این بخش و علت استفاده از آن را توضیح میدهیم با ما همراه باشید تا نحوه استفاده و کار با کلاس Dictionary در سی شارپ (C#) را یاد گیرید.
Dictionary چیست ؟
با استفاده از Dictionary می توانیم یک map از اطلاعات ایجاد کنیم به این صورت که هر اطلاعات شامل یک کلید است و با استفاده از آن map بروی اطلاعات کار کنیم مثلا جستجو کنیم و بیشتر بروی Structure داده کار می کند. مثال ساده آن خود کتاب Dictionary است شما می توانید با ابتدای حرف به لیستی از کلمات دسترسی پیدا کنید این کار باعث سرعت بخشیدن در عمل جستجو شما می شود. هر Dictionary باید از دو بخش تشکیل شود Key و Value مثل همیشه key کلید ما و value مقدار ما خواهد بود هم می توان براساس key و هم براساس value جتسجو انجام داد.
در ادامه مثال های مختلفی از Dictionary برای شما قرار میدهیم برای تعریف Dictionary می توانید مثل زیر عمل کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 | using System; using System.Collections.Generic; class Program { static void Main() { Dictionary<string, int> dictionary = new Dictionary<string, int>(); dictionary.Add("cat", 2); dictionary.Add("dog", 1); dictionary.Add("llama", 0); dictionary.Add("iguana", -1); } } |
در بالا ابتدا یک کلاس Dictionary ساختیم از key , value سپس یکسری مقدار به آن اد کردیم یا اضافه کردیم.
یا به طور مثال کد زیر
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | using System; using System.Collections.Generic; class Program { static void Main() { Dictionary<string, int> dictionary = new Dictionary<string, int>(); dictionary.Add("apple", 1); dictionary.Add("windows", 5); // See whether Dictionary contains this string. if (dictionary.ContainsKey("apple")) { int value = dictionary["apple"]; Console.WriteLine(value); } // See whether it contains this string. if (!dictionary.ContainsKey("acorn")) { Console.WriteLine(false); } } } |
خروجی کد بالا
1 2 | 1 False |
یا مثال زیر
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | using System; using System.Collections.Generic; class Program { static void Main() { Dictionary<string, string> values = new Dictionary<string, string>(); values.Add("cat", "feline"); values.Add("dog", "canine"); // Use TryGetValue. string test; if (values.TryGetValue("cat", out test)) // Returns true. { Console.WriteLine(test); // This is the value at cat. } if (values.TryGetValue("bird", out test)) // Returns false. { Console.WriteLine(false); // Not reached. } } } |
خروجی کد بالا
1 | feline |
به دست آوردن اطلاعات از Dictionary با استفاده از حلقه
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | using System; using System.Collections.Generic; class Program { static void Main() { // Example Dictionary again. Dictionary<string, int> d = new Dictionary<string, int>() { {"cat", 2}, {"dog", 1}, {"llama", 0}, {"iguana", -1} }; // Loop over pairs with foreach. foreach (KeyValuePair<string, int> pair in d) { Console.WriteLine("{0}, {1}", pair.Key, pair.Value); } // Use var keyword to enumerate dictionary. foreach (var pair in d) { Console.WriteLine("{0}, {1}", pair.Key, pair.Value); } } } |
خروجی کد بالا
1 2 3 4 5 6 7 8 | cat, 2 dog, 1 llama, 0 iguana, -1 cat, 2 dog, 1 llama, 0 iguana, -1 |
این آموزش هم به پایان رسید.
موفق و پیروز باشید.