Дублирующиеся ключи в словарях .NET? - PullRequest
238 голосов
/ 28 сентября 2008

Есть ли в библиотеке базовых классов .NET какие-либо словарные классы, позволяющие использовать дублирующиеся ключи? Единственное решение, которое я нашел, - это создать, например, такой класс:

Dictionary<string, List<object>>

Но это довольно раздражает на самом деле использовать. Я полагаю, что в Java MultiMap выполняет это, но не может найти аналог в .NET.

Ответы [ 23 ]

0 голосов
/ 25 мая 2015

U может определить метод для построения ключа составной строки каждый, где вы хотите использовать словарь вы должны использовать этот метод, чтобы построить свой ключ например:

private string keyBuilder(int key1, int key2)
{
    return string.Format("{0}/{1}", key1, key2);
}

для использования:

myDict.ContainsKey(keyBuilder(key1, key2))
0 голосов
/ 20 апреля 2015

Также это возможно:

Dictionary<string, string[]> previousAnswers = null;

Таким образом, мы можем иметь уникальные ключи. Надеюсь, что это работает для вас.

0 голосов
/ 16 января 2015

Вы можете добавить одинаковые ключи в другом регистре, например:

key1
Key1
KEY1
KeY1
KEy1
keY1

Я знаю, что это глупый ответ, но у меня сработало.

...