Встречается на 27% собеседований по C#
Что такое Словарь
Словарь (Dictionary<TKey, TValue>) в C# — это коллекция пар "ключ-значение", где каждый ключ уникален. Он обеспечивает быстрый поиск, добавление и удаление элементов (в среднем O(1)).
Особенности:
- Ключи не могут быть
null(для ссылочных типов), значения — могут. - Реализует интерфейсы
IDictionary<TKey, TValue>,IEnumerable<KeyValuePair<TKey, TValue>>. - Порядок элементов не гарантируется.
Пример:
csharp
var capitals = new Dictionary<string, string>();
capitals.Add("Russia", "Moscow");
capitals["USA"] = "Washington"; // Альтернативное добавление
if (capitals.TryGetValue("Russia", out var capital))
{
Console.WriteLine(capital); // Moscow
}Нюансы:
- При добавлении дубликата ключа —
ArgumentException. - Для пользовательских типов в качестве ключей необходимо переопределять
GetHashCode()иEquals().
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы