tions.Generic;
ConsoleApplication1
{UserInfo
{
//Метод, який реалізує словарьstatic Dictionary lt; int, string gt; MyDic (int i)
{ lt; int, string gt; dic=new Dictionary lt; int, string gt; () ;. WriteLine ( Введіть ім'я співробітника: n );
string s; (int j=0; j lt; i; j ++)
{. Write ( Name {0} - gt; , j);=Console.ReadLine () ;. Add (j, s) ;. Clear ();
} dic;
}
} Program
{void Main ()
{
Console.Write ( Скільки співробітників додати? );
{i=int.Parse (Console.ReadLine ()); lt; int, string gt; dic=UserInfo.MyDic (i);
//Отримати колекцію ключів lt; int gt; keys=dic.Keys;
. WriteLine ( База даних містить: );
foreach (int j in keys) .WriteLine ( ID - gt; {0} Name - gt; {1} , j, dic [j]);
} (FormatException)
{. WriteLine ( Невірний введення );
}. ReadLine ();
}
}
}
Результат роботи програми представлений на малюнку А.4.
Малюнок А.4 - Приклад використання словників
Лістинг 6 - Приклад використання класу SortedSet lt; T gt;
System; System.Collections.Generic;
ConsoleApplication1
{Program
{void Main ()
{
//Створимо дві множини lt; char gt; ss=new SortedSet lt; char gt; (); lt; char gt; ss1=new SortedSetlt;chargt;();.Add(laquo;Araquo;);.Add(laquo;Braquo;);.Add(laquo;Craquo;);.Add(laquo;Zraquo;);
ShowColl (ss, Перша колекція: ) ;. Add ( X );
ss1.Add ( Y ) ;. Add ( Z ); (ss1, Друга колекція );
. SymmetricExceptWith (ss1);
ShowColl (ss, Виключили різнойменне двох множин: ) ;. UnionWith (ss1); (ss, Об'єднання множин: );
. ExceptWith (ss1); (ss, Віднімання множин );
Console.ReadLine ();
} void ShowColl (SortedSet lt; char gt; ss, string s)
{. WriteLine (s); (char ch in ss) .Write (ch + ) ;. WriteLine ( n );
}
}
}
Результат роботи програми представлений на малюнку А.5.
Малюнок А.5 - Приклад використання класу SortedSet lt; T gt;
Лістинг 7 - Приклад застосування паралельних колекцій
System; System.Collections.Concurrent; System.Threading; System.Threading.Tasks;
ConsoleApplication1
{Program
{BlockingCollection lt; int gt; bc;
void producer ()
{(int i=0; i lt; 100; i ++)
{
. Add (i * i) ;. WriteLine ( Виробляється число + i * i);
}. CompleteAdding ();
}
void consumer ()
{i; (! bc.IsCompleted)
{(bc.TryTake (out i)). WriteLine ( Споживається число: + i);
}
}
static void Main ()
{= new BlockingCollection lt; int gt; (4); Pr=new Task (producer); Cn=new Task (consumer) ;. Start () ;. Start ();
{. WaitAll (Cn, Pr);
} (Exception ex)
{. WriteLine (ex);
}
{. Dispose () ;. Dispose () ;. Dispose ();
}
. ReadLine ();
}
}
}
Малюнок А.6 - Застосування паралельних колекцій
Лістинг 8 - Приклад використання перечіслітеля
System; System.Collections.Generic; ConsoleApplication1
{Program
{void Main ()
{ lt; int gt; arr=new List lt; int gt; (); ran=new Random (); (int i=0; i lt; 10; i ++)
arr.Add (ran.Next (1, 20));
//Використовуємо Нумератор
I...