Класс OrderedDictionary
Класс OrderedDictionary<TKey, TValue>
из System.Collections.Generic сочетает
быстрый поиск по ключу с сохранением порядка
вставки при перечислении. Реализует
IDictionary<TKey, TValue>.
Синтаксис
OrderedDictionary<TKey, TValue> map =
new OrderedDictionary<TKey, TValue>();
Пример
Давайте добавить пары и обойти в порядке вставки:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
OrderedDictionary<int, string> map = new OrderedDictionary<int, string>();
map.Add(3, "c");
map.Add(1, "a");
map.Add(2, "b");
List<int> keys = new List<int>();
foreach (KeyValuePair<int, string> pair in map)
{
keys.Add(pair.Key);
}
Console.WriteLine(string.Join(" ", keys));
}
}
Результат выполнения кода:
"3 1 2"
Пример
Давайте прочитать значение по ключу:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
OrderedDictionary<int, string> map = new OrderedDictionary<int, string>();
map.Add(2, "b");
Console.WriteLine(map[2]);
}
}
Результат выполнения кода:
"b"
Пример
Давайте вывести Count:
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
OrderedDictionary<int, string> map = new OrderedDictionary<int, string>();
map.Add(1, "a");
map.Add(2, "b");
map.Add(3, "c");
Console.WriteLine(map.Count);
}
}
Результат выполнения кода:
3
Смотрите также
-
метод
Insert,
который вставляет пару на позицию -
метод
RemoveAt,
который удаляет по индексу -
класс
Dictionary,
который не сохраняет порядок -
класс
SortedDictionary,
который сортирует по ключу