Метод TryGetValue
Метод TryGetValue класса
FrozenDictionary<TKey, TValue>
ищет ключ и через out возвращает
значение. Возвращает true, если ключ
найден. Таблица при этом не меняется.
Синтаксис
bool found = frozen.TryGetValue(key, out TValue value);
Пример
Давайте прочитать существующий ключ:
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();
if (frozen.TryGetValue(2, out string val))
{
Console.WriteLine(val);
}
}
}
Результат выполнения кода:
"b"
Пример
Давайте запросить отсутствующий ключ:
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> frozen = map.ToFrozenDictionary();
Console.WriteLine(frozen.TryGetValue(9, out string val));
}
}
Результат выполнения кода:
False
Пример
Давайте сравнить два успешных чтения:
using System;
using System.Collections.Generic;
using System.Collections.Frozen;
class Program
{
static void Main()
{
Dictionary<int, string> map = new Dictionary<int, string> { {3, "c"} };
FrozenDictionary<int, string> frozen = map.ToFrozenDictionary();
bool a = frozen.TryGetValue(3, out string v1);
bool b = frozen.TryGetValue(3, out string v2);
Console.WriteLine(a && b);
}
}
Результат выполнения кода:
True
Смотрите также
-
метод
TryGetValue,
который читает из изменяемой таблицы -
метод
ToFrozenDictionary,
который создаёт frozen -
метод
ContainsKey,
который только проверяет ключ -
класс
FrozenDictionary,
который только для чтения