Чтения принятого ответа C# Java HashMap equivalent, это литературные государства:В чем разница между Dictionary.Item и Dictionary.Add?
C#'s Dictionary uses the Item property for setting/getting items:
- myDictionary.Item[key] = value
- MyObject value = myDictionary.Item[key]
И при попытке осуществить это, я получаю сообщение об ошибке при использовании:
myDictionary.Item[SomeKey] = SomeValue;
Error: CS1061 'Dictionary' does not contain a definition for 'Item'
И мне нужно для использования myDictionary.Add(SomeKey, SomeValue);
вместо this answer и MSDN - Dictionary для устранения ошибки.
Код в порядке, но из любопытства я делаю что-то неправильно? Кроме один не компилируется, в чем разница между
Dictionary.Item[SomeKey] = SomeValue;
и
Dictionary.Add(SomeKey, SomeValue);
Edit:
Я редактировал принятый ответ в C# Java HashMap equivalent. Смотрите историю изданий, чтобы узнать почему.
Чем позже кину DuplicateKeyException если словарь уже содержит SomeKey, в то время как бывший не будет. Подумайте об этом, как AddOrUpdate. –
Это первое: Dictionary.Item [SomeKey] = SomeValue; заключается в изменении значений, уже находящихся в словаре. Другой - добавить новые слова в словарь. – jdweng
Что касается вашей ошибки, просто опустите элемент, например: myDictionary [SomeKey] = SomeValue; – Evk