Я имею дело с массивом словарей, и этот ТАК пост действительно полезен для достижения того, чего я хочу до сих пор.
Но теперь я хочу инициализировать Dictionary
для индекса массива, основанного на выводе кода.
У меня есть Dictionary<int,string>
, где я храню Id
в качестве ключа. У меня есть массив из 10 словарей следующим образом:
Dictionary<int, string>[] matrix = new Dictionary<int, string>[10];
Итак, исходя из значения (Id%10)
, я хочу сохранить эту запись в соответствующем массиве. Например, если id= 12
, я хочу сохранить его в matrix[2]
. Если id = 15
, я хочу сохранить его в matrix[5]
.
Теперь вопрос в том, как каждый раз проверять, инициализирован ли словарь для определенного индекса или нет. Если да, то добавьте запись в словарь, иначе инициализируйте экземпляр, а затем добавьте запись в словарь.
Примерно так:
if {} // if dict with id%10 is initialized then
{
matrix[id%10].Add();
}
else
{
matrix[id%10] = new Dictionary<int,string>();
matrix[id%10].Add();
}
Редактировать: я знаю, что могу инициализировать все сначала, используя цикл, но я хочу инициализировать только тогда, когда это необходимо.