List и Dictionary в C#
В этом уроке вы будете хранить упорядоченные данные в List, а данные «ключ-значение» в Dictionary в C#.
Введение
В отличие от массивов фиксированной длины, обобщённые коллекции вроде List<T> и Dictionary<TKey, TValue> автоматически растут при добавлении данных. То, что указано в угловых скобках, задаёт тип хранимых значений, поэтому компилятор не даст добавить значение неверного типа.
Dictionary scores хранит балл каждого человека по его имени, а инструкция scores["Grace"] = 92 добавляет новую пару ключ-значение. Метод TryGetValue ищет значение по ключу и, если ключа нет, возвращает false вместо ошибки. Найденное значение выходит через переменную out int score, и выводится 92.
Как это работает
Меняйте список кнопками и смотрите, как обновляются индексы. Двигайте start и stop, чтобы увидеть, какие элементы попадают в срез.
Пример на C#, который можно запустить
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
var scores = new Dictionary<string, int> { ["Ada"] = 95, ["Lin"] = 88 };
scores["Grace"] = 92;
if (scores.TryGetValue("Grace", out int score))
Console.WriteLine(score);
}
}
92Практика с отладчиком
Попрактикуйтесь на задаче
Примените материал этого урока к реальной задаче. Каждая задача запускается в браузере, с мгновенными тестами и разбором от ИИ.
- Частота символов Посчитайте, сколько раз встречается каждый символ. Легко
- Удаление дубликатов Оставьте только первое вхождение каждого значения. Легко