Метод ToFrozenDictionary
Метод ToFrozenDictionary - расширение
в System.Collections.Frozen, которое
строит
FrozenDictionary<TKey, TValue>
из IEnumerable<KeyValuePair<TKey, TValue>>
или словаря.
Синтаксис
FrozenDictionary<TKey, TValue> frozen = source.ToFrozenDictionary();
Пример
Давайте заморозить готовый Dictionary:
using System;
using System.Collections.Generic;
using System.Collections.Frozen;
class Program
{
static void Main()
{
Dictionary<int, string> map = new Dictionary<int, string>
{
{1, "a"},
{2, "b"}
};
FrozenDictionary<int, string> frozen = map.ToFrozenDictionary();
Console.WriteLine(frozen.TryGetValue(1, out string val));
Console.WriteLine(val);
}
}
Результат выполнения кода:
True
"a"
Пример
Давайте построить из массива пар:
using System;
using System.Collections.Generic;
using System.Collections.Frozen;
class Program
{
static void Main()
{
KeyValuePair<int, string>[] pairs = new KeyValuePair<int, string>[]
{
new KeyValuePair<int, string>(4, "d"),
new KeyValuePair<int, string>(5, "e")
};
FrozenDictionary<int, string> frozen = pairs.ToFrozenDictionary();
Console.WriteLine(frozen.Count);
}
}
Результат выполнения кода:
2
Пример
Давайте сравнить две замороженные таблицы с одинаковым содержимым:
using System;
using System.Collections.Generic;
using System.Collections.Frozen;
class Program
{
static void Main()
{
Dictionary<int, string> map = new Dictionary<int, string> { {1, "a"} };
FrozenDictionary<int, string> f1 = map.ToFrozenDictionary();
FrozenDictionary<int, string> f2 = map.ToFrozenDictionary();
Console.WriteLine(f1[1] == f2[1]);
}
}
Результат выполнения кода:
True
Смотрите также
-
метод
ToImmutableDictionary,
который строит ImmutableDictionary -
класс
FrozenDictionary,
который является результатом -
метод
TryGetValue,
который читает из frozen -
класс
Dictionary,
который можно заморозить