°­ÁÂ¿Í ÆÁ

C# Dictionary »ç¿ë¹ý Á¤¸® ³¯Â¥:2021-7-11 10:36:33 Á¶È¸¼ö:536
ÀÛ¼ºÀÚ : ¼Ò¿£
Æ÷ÀÎÆ® : 1616
°¡ÀÔÀÏ : 2020-02-02 00:09:14
¹æ¹®È½¼ö : 118
±Û 207°³, ´ñ±Û 65°³
¼Ò°³ : SoEn ¿î¿µÀÚÀÔ´Ï´Ù.
ÀÛ¼º±Û º¸±â
ÂÊÁö º¸³»±â
Dictionary´Â Ű¿Í °ªÀÇ ½ÖÀ» ÀúÀåÇÏ´Â Ä÷º¼ÇÀÌ´Ù. ÇØ½Ã ¾Ë°í¸®ÁòÀ» »ç¿ëÇÏ¿© ÇØ½¬ Å×À̺íÀ̶ó°íµµ ºÎ¸£¸ç ´ëÀÀ °ü°è¸¦ Ç¥ÇöÇÑ´Ù°í ÇØ¼­ ¸ÊÀ̶ó°íµµ ºÎ¸¥´Ù. ¾ÖÃʺÎÅÍ ºü¸¥ °Ë»öÀ» À§ÇØ Æ¯È­µÈ ÀڷᱸÁ¶¿©¼­ °Ë»ö ¼Óµµ´Â ȯ»óÀûÀ¸·Î ºü¸£´Ù. ¼ö¾ï°³ÀÇ Å°°¡ À־ ½Ç½Ã°£À¸·Î °ªÀ» ã¾Æ³½´Ù. »ý¼ºÀÚ´Â ´ÙÀ½°ú °°´Ù.

Dictionary<TKey,TValue>()
Dictionary<TKey,TValue>(Int32)
Dictionary<TKey,TValue>(IDictionary<TKey,TValue>)
Dictionary<TKey,TValue>(IEqualityComparer<TKey>)

¸ðµç »ý¼ºÀڴ ŰÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇÏ´Â TKey¿Í °ªÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇÏ´Â TValue¸¦ ŸÀÔ Àμö·Î °¡Áø´Ù. Ű, °ª ¸ðµÎ ÀÓÀÇÀÇ Å¸ÀÔÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î Ű´Â ¹®ÀÚ¿­, °ªÀº Á¤¼öÀÎ »çÀüÀº Dictionary<String, int> ŸÀÔÀ¸·Î ¼±¾ðÇÑ´Ù.
µðÆúÆ® »ý¼ºÀÚ¸¸ ÇØµµ ÃæºÐÇÏ´Ù. ¿ë·®Àº ÀÚµ¿À¸·Î ´Ã¾î³ªÁö¸¸ »ý¼ºÇÒ ¶§ ¹Ì¸® ¿ë·®À» ÁöÁ¤ÇÒ ¼öµµ ÀÖ´Ù. ´Ù¸¥ »çÀüÀ» º¹»çÇÏ´Â º¹»ç »ý¼ºÀÚµµ Á¤ÀǵǾî ÀÖ´Ù. ŰÀÇ »óµî¼ºÀ» ºñ±³ÇÏ´Â ºñ±³ÀÚ¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖµÇ »ý·«½Ã ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÏ´Â ±âº» ºñ±³ÀÚ¸¦ »ç¿ëÇÑ´Ù.
°ªÀ» Ãß°¡ÇÒ ¶§´Â Add ¸Þ¼­µå³ª [] Àε¦¼­¸¦ »ç¿ëÇÑ´Ù. Add ¸Þ¼­µå¿Í Ű¿Í °ªÀ» Àμö·Î Àü´ÞÇϰí Àε¦¼­´Â Ű·ÎºÎÅÍ ¿ä¼Ò¸¦ ã¾Æ °ªÀ» ´ëÀÔÇÑ´Ù.

Add (TKey key, TValue value);
this[key] = value

»õ·Î¿î ۸¦ »ðÀÔÇÏ´Â µ¿ÀÛÀº °°Áö¸¸ ÀÌ¹Ì Å°°¡ ÀÖÀ» °æ¿ìÀÇ Ã³¸®°¡ ´Ù¸£´Ù. Add ¸Þ¼­µå´Â ArgumentException ¿¹¿Ü¸¦ ¹ß»ý½ÃŰÁö¸¸ Àε¦¼­´Â Áߺ¹Å°¸¦ »õ·Î¿î °ªÀ¸·Î ´ëüÇÑ´Ù. Add´Â Ãß°¡¸¸ Çϰí Àε¦¼­´Â ۰¡ ¾øÀ¸¸é Ãß°¡, ÀÖÀ¸¸é °»½ÅÇÑ´Ù.
°ªÀº »çÀü ³»¿¡¼­ À¯ÀÏÇØ¾ß Çϸç nullÀÏ ¼ö ¾ø´Ù. ¹Ý¸é °ªÀº ÂüÁ¶ ŸÀÔÀÏ °æ¿ì nullÀ̾ »ó°ü ¾øÀ¸¸ç Áߺ¹µµ °¡´ÉÇÏ´Ù. °ªÀ» Àд º°µµÀÇ ¸Þ¼­µå´Â Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸ç Àε¦¼­¸¦ »ç¿ëÇÑ´Ù. [ ] °ýÈ£¾È¿¡ ۸¦ ÁöÁ¤ÇÏ¸é °ªÀ» ÀÐ¾î ¸®ÅÏÇÑ´Ù. ۰¡ ¾øÀ¸¸é KeyNotFoundException ¿¹¿Ü°¡ ¹ß»ýÇÑ´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>();
             dic.Add("Çѱ¹", "¼­¿ï");
             dic["Áß±¹"] = "»óÇÏÀÌ";
             try
             {
                   dic.Add("Çѱ¹", "ºÎ»ê");
             }
             catch (ArgumentException)
             {
                   Console.WriteLine("ÀÌ¹Ì ÀúÀåÇÑ ±¹°¡ÀÔ´Ï´Ù.");
             }
             dic["Áß±¹"] = "º£ÀÌ¡";
             dic.Add("ÀϺ»", "µµÄì");

             Console.WriteLine(dic["Çѱ¹"]);
             Console.WriteLine(dic["Áß±¹"]);
             Console.WriteLine(dic["ÀϺ»"]);
      }
}
ÀÌ¹Ì ÀúÀåÇÑ ±¹°¡ÀÔ´Ï´Ù.
¼­¿ï
º£ÀÌ¡
µµÄì

Çѱ¹ ۰¡ ÀÌ¹Ì ÀúÀåµÇ¾î ÀÖ´Â »óÅ¿¡¼­ Add ¸Þ¼­µå·Î Çѱ¹À» ¶Ç Ãß°¡ÇÏ¸é ¿¹¿Ü°¡ ¹ß»ýÇÑ´Ù. ¹Ý¸é Áß±¹ ۰¡ ÀÌ¹Ì ÀÖ´Â »óÅ¿¡¼­ Àε¦¼­·Î ´Ù½Ã ´ëÀÔÇÏ¸é ±âÁ¸°ªÀÌ ¹Ù²ï´Ù. »çÀüÀ» ¾ÈÀüÇÏ°Ô ÀÐÀ¸·Á¸é ۸¦ Àбâ Àü¿¡ Á¸ÀçÇÏ´ÂÁö °Ë»çÇØ¾ß ÇÑ´Ù.

bool ContainsKey (TKey key);
bool ContainsValue (TValue value);

ContainsKey ¸Þ¼­µå´Â ۰¡ »çÀü¿¡ Á¸ÀçÇÏ´ÂÁö Á¶»çÇÑ´Ù. ÀÌ ¸Þ¼­µå°¡ true¸¦ ¸®ÅÏÇϸé ÇØ´ç ۰¡ ÀÌ¹Ì Á¸ÀçÇÏ´Â °ÍÀÌ´Ù. ÀÌ »óÅÂÀÏ ¶§ Àε¦¼­·Î ۸¦ ¾ÈÀüÇÏ°Ô ÀÐÀ» ¼ö ÀÖÀ¸¸ç Add·Î °°Àº ۸¦ »ðÀÔÇØ¼­´Â ¾ÈµÈ´Ù.
ContainsValue´Â °ªÀÌ Á¸ÀçÇÏ´ÂÁö Á¶»çÇÑ´Ù. Ű´Â ÇØ½¬ ¾Ë°í¸®Áò¿¡ ÀÇÇØ ºü¸£°Ô ã´Âµ¥ ºñÇØ °ªÀº ¼±Çü °Ë»öÀ¸·Î ÀÏÀÏÀÌ Ã£¾Æ¾ß ÇϹǷΠ¼Óµµ°¡ ´À¸®´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>();
             dic.Add("Çѱ¹", "¼­¿ï");
             dic["Áß±¹"] = "º£ÀÌ¡";
             dic.Add("ÀϺ»", "µµÄì");

             if (dic.ContainsKey("Çѱ¹"))
             {
                   Console.WriteLine("Çѱ¹ÀÇ ¼öµµ : " + dic["Çѱ¹"]);
             }
             if (dic.ContainsKey("¹Ì±¹"))
             {
                   Console.WriteLine("¹Ì±¹ÀÇ ¼öµµ : " + dic["¹Ì±¹"]);
             }
             if (dic.ContainsValue("º£ÀÌ¡"))
             {
                   Console.WriteLine("º£ÀÌ¡ ÀÖÀ½");
             }
             if (dic.ContainsValue("·±´ø"))
            {
                   Console.WriteLine("·±´ø ÀÖÀ½");
             }
      }
}
Çѱ¹ÀÇ ¼öµµ : ¼­¿ï
º£ÀÌ¡ ÀÖÀ½

Çѱ¹Àº ۰¡ ÀÖ¾î ¼öµµ¸¦ Á¶»çÇÏÁö¸¸ ¹Ì±¹Àº ۰¡ ¾ø¾î Á¶»çÇÏÁö ¾Ê´Â´Ù. ¾ø´Â ۸¦ ÀÐÀ¸¸é ¿¹¿Ü°¡ ¹ß»ýÇÑ´Ù. ±×·¡¼­ Ç×»ó ۰¡ ÀÖ´ÂÁö Á¡°ËÇÑ ÈÄ Àоî¾ß ¾ÈÀüÇÏ´Ù. º£ÀÌ¡Àº °ªÀÌ ÀÖÁö¸¸ ·±´øÀº ¾ø´Ù.
°ªÀÌ Á¸ÀçÇÏ´ÂÁö¸¸ Á¶»çÇÒ »Ó ±×·± °ªÀÌ ¸î °³³ª ÀÖ´ÂÁö, ±× °ªÀ» °¡Áø ۰¡ ¹«¾ùÀÎÁö´Â ¾Ë ¼ö ¾ø´Ù. »çÀüÀº Ű·ÎºÎÅÍ °ªÀ» ½Å¼ÓÇÏ°Ô Ã£´Â ÀÚ·á ±¸Á¶ÀÌÁö ¹Ý´ë´Â ¾Æ´Ï´Ù. °ªÀ¸·ÎºÎÅÍ Å°¸¦ ãÀ¸·Á¸é ¼øÈ¸Çϸç ÀÏÀÏÀÌ Á¡°ËÇÏ´Â ¼ö¹Û¿¡ ¾ø´Ù.
°ªÀ» Àбâ Àü¿¡ ŰÀÇ Á¸Àç ¿©ºÎ¸¦ ÀÏÀÏÀÌ °Ë»çÇÏ´Â °ÍÀº ±ÍÂúÀº ÀÏÀÌ´Ù. ±×·¸´Ù°í ¾ø´Â ۸¦ ¹«Åδë°í °Ë»öÇØ ¹ö¸®¸é ¿¹¿Ü°¡ ¹ß»ýÇÒ ¼ö ÀÖ¾î À§ÇèÇÏ´Ù. ¿¹¿Ü¾øÀÌ °ªÀ» ãÀ¸·Á¸é ´ÙÀ½ ¸Þ¼­µå¸¦ È£ÃâÇÑ´Ù.

bool TryGetValue (TKey key, out TValue value);

۰¡ ÀÖÀ» ¶§¸¸ °ªÀ» Ãâ·Â Àμö·Î ´ëÀÔÇϰí true¸¦ ¸®ÅÏÇÑ´Ù. ۰¡ ¾øÀ¸¸é Ãâ·Â Àμö¿¡ ±âº»°ªÀ» ´ëÀÔÇϰí false¸¦ ¸®ÅÏÇÑ´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>();
             dic.Add("Çѱ¹", "¼­¿ï");
             dic["Áß±¹"] = "º£ÀÌ¡";
             dic.Add("ÀϺ»", "µµÄì");

             String country;
             if (dic.TryGetValue("ÀϺ»", out country))
             {
                   Console.WriteLine("ÀϺ»ÀÇ ¼öµµ : " + country);
             }
             if (dic.TryGetValue("ÇÁ¶û½º", out country))
             {
                   Console.WriteLine("ÇÁ¶û½ºÀÇ ¼öµµ : " + country);
             }
             else
             {
                   Console.WriteLine("ÇÁ¶û½º Á¤º¸ ¾øÀ½");
             }
      }
}
ÀϺ»ÀÇ ¼öµµ : µµÄì
ÇÁ¶û½º Á¤º¸ ¾øÀ½

TryGetValue·Î ÀϺ»À» °Ë»öÇϸé country¿¡ µµÄ츦 ´ëÀÔÇϰí true¸¦ ¸®ÅÏÇÑ´Ù. À̶§´Â Àε¦¼­·Î ´Ù½Ã dic["ÀϺ»"]À» ãÀ» ÇÊ¿ä ¾øÀÌ country¸¦ ¹Ù·Î »ç¿ëÇÏ¸é µÈ´Ù. ÇÁ¶û½º¸¦ °Ë»öÇϸé country¿¡ nullÀ» ´ëÀÔÇϰí false¸¦ ¸®ÅÏÇÑ´Ù. Ãâ·Â ÀμöÀÇ ¿ø·¡°ªÀ» À¯ÁöÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ±âº»°ªÀ¸·Î º¯°æÇØ ¹ö¸°´Ù.
TryGetValue´Â ¸®ÅϰªÀ¸·Î ¼º°ø ¿©ºÎ¸¦ ¾Ë·ÁÁÙ »Ó ¾î¶² °æ¿ì¶óµµ ¿¹¿Ü¸¦ ¹ß»ý½ÃŰÁö´Â ¾Ê¾Æ ¿¹¿Ü ±¸¹®À» ÀÛ¼ºÇÏÁö ¾Ê¾Æµµ µÈ´Ù. ±×·¯³ª Ãâ·Â¿ë Àμö¸¦ ¹Ì¸® ÁغñÇÏ°í ¸®ÅϰªÀ» Á¡°ËÇØ ºÁ¾ß ÇÑ´Ù´Â ¸é¿¡¼­ ¹ø°Å·Ó±â´Â ¸ÅÇѰ¡ÁöÀÌ´Ù.
۸¦ »èÁ¦ÇÒ ¶§´Â ´ÙÀ½ µÎ ¸Þ¼­µå¸¦ »ç¿ëÇÑ´Ù.

bool Remove (TKey key);
void Clear ();

۸¦ ¹ß°ßÇÏ¿© Áö¿üÀ¸¸é true¸¦ ¸®ÅÏÇϰí ۰¡ ¾øÀ¸¸é false¸¦ ¸®ÅÏÇÑ´Ù. »èÁ¦¿¡ ½ÇÆÐÇØµµ ¿¹¿Ü´Â ¹ß»ýÇÏÁö ¾ÊÀ¸¸ç »çÀüÀº º¯È­¾øÀÌ À¯ÁöµÈ´Ù. Clear´Â ¸ðµç ¿ä¼Ò¸¦ ´Ù Áö¿î´Ù. Count´Â 0ÀÌ µÇÁö¸¸ ³»ºÎ ¿ë·®Àº º¯È­ ¾ø´Ù.
»çÀüÀÇ ¸ðµç ¿ä¼Ò¸¦ ¼øÈ¸Çϸç ÀÐÀ» ¶§´Â foreach¹®ÀÌ Á¦ÀÏ ÆíÇÏ´Ù. »çÀüÀÇ ÇÑ ¿ä¼Ò´Â KeyValuePair<TKey,TValue> ŸÀÔÀ̸ç ÀÌ Å¸ÀÔÀÇ º¯¼ö·Î ¿ä¼Ò¸¦ ¹Þ¾Æ Ű¿Í °ªÀ» Çϳª¾¿ Àд´Ù. ´ÙÀ½ ¿¹Á¦´Â »çÀüÀÇ ¸ðµç Ű¿Í °ªÀ» ´ýÇÁÇÑ´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>();
             dic.Add("Çѱ¹", "¼­¿ï");
             dic["Áß±¹"] = "º£ÀÌ¡";
             dic.Add("ÀϺ»", "µµÄì");

             foreach (KeyValuePair<String, String> item in dic)
             {
                   Console.WriteLine(item.Key + " : " + item.Value);
             }
      }
}
Çѱ¹ : ¼­¿ï
Áß±¹ : º£ÀÌ¡
ÀϺ» : µµÄì

Á¦¾î º¯¼ö ŸÀÔÀÌ º¹ÀâÇØ º¸À̸é var·Î ¹Þ¾Æ¼­ »ç¿ëÇØµµ µÈ´Ù. ¼øÈ¸´Â °ªÀ» Àб⸸ ÇÏ¸ç ¿ä¼Ò¸¦ º¯°æÇÒ ¼ö´Â ¾ø´Ù. itemÀÇ Key¿Í Value´Â ¸ðµÎ Àбâ Àü¿ë ¼Ó¼ºÀ̾ º¯°æÇÒ ¼ö ¾ø´Ù. ±×·¸´Ù¸é ´ÙÀ½ ÄÚµå´Â ¾î¶³±î?

foreach (KeyValuePair<String, String> item in dic)
{
          dic[item.Key] = "¸ð¸§";
}

Àε¦¼­·Î item.Key¸¦ Àоî ÇØ´ç ŰÀÇ °ªÀ» Àϰý º¯°æÇÏ¿´´Ù. ¹®¹ýÀûÀÎ ÀÌ»óÀº ¾ø¾î ¿¡·¯´Â ¾Æ´Ï¸ç ÄÄÆÄÀÏ ¹× ½ÇÇà °¡´ÉÇÏÁö¸¸ ¿¹¿Ü°¡ ¹ß»ýÇÑ´Ù. foreach·Î dic »çÀüÀ» ¼øÈ¸ÇÏ´Â Áß°£¿¡ dic »çÀüÀ» ¹Ù²ã ¹ö¸®¸é ¼øÈ¸ ·çƾÀÌ Á¤»ó ½ÇÇàÇÒ ¼ö ¾ø±â ¶§¹®ÀÌ´Ù.
»çÀü »Ó¸¸ ¾Æ´Ï¶ó ¸ðµç Ä÷º¼ÇÀº ¼øÈ¸Áß¿¡ Àб⸸ ÇØ¾ß ÇÑ´Ù. foreach ´ë½Å GetEnumerator ¸Þ¼­µå·Î ¿­°ÅÀÚ¸¦ ±¸ÇØ Á÷Á¢ ¿­°ÅÇÒ ¼öµµ ÀÖÁö¸¸ º°´Ù¸¥ ÀÌÁ¡Àº ¾ø´Ù. »çÀüÀÇ ¼Ó¼ºÀº ´ÙÀ½°ú °°´Ù.
 
¼Ó¼º ¼³¸í
Count ¿ä¼ÒÀÇ °³¼ö¸¦ Á¶»çÇÏ´Â Àбâ Àü¿ëÀÌ´Ù. »çÀüÀÇ ½ÇÁ¦ ¿ë·®Àº °³¼öº¸´Ù´Â ¸¹À¸¸ç ³»ºÎÀûÀ¸·Î °ü¸®ÇÒ »Ó Á¶»çÇÏ´Â ¹æ¹ýÀº ¾ø´Ù.
Keys ŰÀÇ Ä÷º¼ÇÀ̸ç Dictionary<TKey,TValue>.KeyCollection ŸÀÔÀÌ´Ù.
Values °ªÀÇ Ä÷º¼ÇÀ̸ç Dictionary<TKey,TValue>.ValueCollection ŸÀÔÀÌ´Ù.
Comparer ŰÀÇ °ªÀ» ºñ±³ÇÏ´Â IEqualityComparer<TKey> ŸÀÔÀÇ °´Ã¼ÀÌ´Ù.

»çÀü Àüü¸¦ ¼øÈ¸ÇÏ´Â ¹æ¹ýÀÌ ÀÖÀ¸´Ï Keys¿Í Values¸¦ µû·Î ¼øÈ¸ÇÒ ÀÏÀº º°·Î ¾ø´Ù. Comparer´Â ŰÀÇ Áߺ¹¼ºÀ» °Ë»çÇÏ´Â ºñ±³ÀÚÀÌ¸ç µðÆúÆ®´Â EqualityComparer<T>.Default·Î ¹«³­ÇÏ°Ô ÁöÁ¤µÇ¾î ÀÖ´Ù. À¢¸¸Çؼ­´Â º¯°æÇÒ ÀÏÀÌ µå¹°Áö¸¸ ¹®ÀÚ¿­ ŸÀÔÀÇ Å°¸¦ ´ë¼Ò¹®ÀÚ ±¸ºÐ¾øÀÌ ÀúÀåÇÒ ¶§ °¡²û º¯°æÇÑ´Ù. ´ÙÀ½ ¿¹Á¦¸¦ º¸ÀÚ.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>();
             dic.Add("Korea", "¼­¿ï");
             dic.Add("KOREA", "¼­¿ï");

             if (dic.ContainsKey("korea"))
             {
                   Console.WriteLine("Çѱ¹ Á¤º¸ ÀÖÀ½");
             }
             else
             {
                   Console.WriteLine("Çѱ¹ Á¤º¸ ¾øÀ½");
             }
      }
}
Çѱ¹ Á¤º¸ ¾øÀ½

Korea¿Í KOREA¸¦ Ű·Î ÀúÀåÇߴµ¥ µÑ ´Ù Àß ÀúÀåµÈ´Ù. µðÆúÆ® ºñ±³ÀÚ°¡ ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇϱ⠶§¹®¿¡ öÀÚ´Â °°¾Æµµ ¹®ÀÚ ±¸¼ºÀÌ ´Ù¸£¸é ۰¡ Áߺ¹µÇÁö ¾Ê´Â´Ù. ÀÌ »óÅ¿¡¼­ korea ۰¡ ÀÖ´ÂÁö ãÀ¸¸é ¾ø´Ù°í ³ª¿Â´Ù.
´ë¼Ò¹®ÀÚ¸¦ Á¤È®È÷ ±¸ºÐÇØ¾ß ÇÏ´Â °æ¿ì´Â ÀÌ·± ºñ±³°¡ ÇÕ´çÇÏÁö¸¸ Äڵ尪À̳ª URLµî ´ë¼Ò¹®ÀÚ ±¸ºÐÀÌ ¾ø´Â Á¤º¸¸¦ ÀúÀåÇÒ ¶§´Â ºÒÆíÇØÁø´Ù. www.soen.kr·Î ÀúÀåÇØ ³õ°í www.SoEn.kr·Î ãÀ¸¸é ¾ø´Ù°í ³ª¿Â´Ù.
ÀÌ·² ¶§´Â ´ë¼Ò¹®ÀÚ¸¦ ¹«½ÃÇÏ´Â StringComparer.OrdinalIgnoreCase ºñ±³ÀÚ·Î »çÀüÀ» »ý¼ºÇØ¾ß ÇÑ´Ù. ºñ±³ÀÚ´Â °ªÀ» ÃÖÃÊ ³ÖÀ» ¶§ºÎÅÍ Àû¿ëÇÏ´Â °ÍÀ̾ Áß°£¿¡ ¹Ù²Ü ¼ö´Â ¾ø°í »ý¼ºÇÒ ¶§¸¸ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>
                   (StringComparer.OrdinalIgnoreCase);
             dic.Add("Korea", "¼­¿ï");
             //dic.Add("KOREA", "¼­¿ï");

             if (dic.ContainsKey("korea"))
             {
                   Console.WriteLine("Çѱ¹ Á¤º¸ ÀÖÀ½");
             }
             else
             {
                   Console.WriteLine("Çѱ¹ Á¤º¸ ¾øÀ½");
             }
      }
}
Çѱ¹ Á¤º¸ ÀÖÀ½

ºñ±³ÀÚ°¡ ´ë¼Ò¹®ÀÚ¸¦ ¹«½ÃÇϸé Korea۸¦ ÀúÀåÇÑ »óÅ¿¡¼­ KOREA´Â Áߺ¹À̾ °°ÀÌ ÀúÀåÇÒ ¼ö ¾ø´Ù. korea·Î ã¾Æµµ ÀÖ´Ù°í º¸°íÇÑ´Ù. Ű´Â ¹®ÀÚ¿­À̶ó±âº¸´Ù´Â ½Äº°ÀÚ¿©¼­ ´ë¼Ò¹®ÀÚ¸¦ ¹«½ÃÇÏ´Â °ÍÀÌ ´õ ¾î¿ï¸®´Â °æ¿ì°¡ ¸¹´Ù.
ºñ±³Àڴ Ű¸¦ ºñ±³ÇÏ´Â ¿ªÇÒ¸¸ ÇÒ »ÓÀÌÁö ´ë¼Ò¹®ÀÚ ±¸¼ºÀ» °­Á¦·Î ¹Ù²ÙÁö´Â ¾Ê´Â´Ù. ¶ÇÇÑ Å°¸¸ ºñ±³ÇÒ »Ó °ªÀº Ç×»ó ±âº» ºñ±³ÀÚ·Î ºñ±³ÇÑ´Ù.
 
class CSTest {
      static void Main()
      {
             Dictionary<String, String> dic = new Dictionary<String, String>
                   (StringComparer.OrdinalIgnoreCase);
             dic.Add("Korea", "Seoul");
             dic.Add("CHINA", "BEIJING");
             dic.Add("japan", "Tokyo");

             foreach (KeyValuePair<String, String> item in dic)
             {
                   Console.WriteLine(item.Key + " : " + item.Value);
             }
             Console.WriteLine(dic.ContainsValue("seoul") ? "ÀÖ´Ù." : "¾ø´Ù.");
      }
}
Korea : Seoul
CHINA : BEIJING
japan : Tokyo
¾ø´Ù.

»çÀüÀÇ Å°¿Í °ª¿¡ ÀÔ·ÂÇÑ ´ë¼Ò¹®ÀÚ´Â ±×´ë·Î À¯ÁöµÈ´Ù. ºñ±³ÀÚ°¡ ´ë¼Ò¹®ÀÚ¸¦ ¹«½ÃÇØµµ °ªÀ» ãÀ» ¶§´Â Ç×»ó ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÑ´Ù. seoulÀº ¾ø°í Seoul¸¸ ÀÖ´Ù. ¸¸¾à °ªÀ» ´ë¼Ò¹®ÀÚ ±¸ºÐ¾øÀÌ »ç¿ëÇÏ·Á¸é ³ÖÀ» ¶§ Ç×»ó ´ë¹®ÀÚ³ª ¼Ò¹®ÀÚ·Î ¹Ù²ã ³Ö¾î¾ß ÇÑ´Ù.
Sorted​Dictionary<TKey,TValue> ŸÀÔÀº ¿ä¼Ò¸¦ »çÀü¼øÀ¸·Î Á¤·ÄÇÏ¿© ÀÌÁø °Ë»öÀ» »ç¿ëÇÑ´Ù. ³»ºÎ ¾Ë°í¸®ÁòÀÌ ´Þ¶ó ¿­°Å½Ã ¿ä¼ÒÀÇ ¼ø¼­°¡ ´Ù¸£´Ù. ´ë¿ë·®¿¡¼­ ¼Óµµ³ª ¸Þ¸ð¸® »ç¿ë·®ÀÇ Â÷ÀÌ Á¤µµ¸¸ ÀÖÀ» »Ó Dictionary¿Í µ¿ÀÛÀº °ÅÀÇ °°´Ù.
 



°³¹ßÀÚÀÇ Ãµ±¹ SoEn

¸ñ·Ïº¸±â »èÁ¦ ¼öÁ¤ ½Å°í ½ºÅ©·¦


·Î±×ÀÎÇÏ¼Å¾ß ´ñ±ÛÀ» ´Þ ¼ö ÀÖ½À´Ï´Ù.