Когда использовать словари? - PullRequest
1 голос
/ 20 мая 2010

Я не совсем уверен, когда мне следует использовать словарь в моих приложениях.

Каждый раз, когда я кодирую регистр переключателя, который возвращает, например, одно значение, должен ли я стремиться к dic?

Спасибо

Ответы [ 4 ]

2 голосов
/ 20 мая 2010

Словарь полезен, когда у вас есть естественное отношение ключ-> значение. Это относится к словарю языка (ключ: значение одного слова: список переводов) или к индексу документа (ключ: заголовок, значение: тело текста).

Если вы обнаружите, что кодируете оператор switch, где каждый случай отвечает только за возвращение одного значения, у вас есть такое естественное отношение ключ -> значение и вам следует использовать словарь.

1 голос
/ 20 мая 2010

Подумайте об использовании традиционного словаря. У вас есть слово и его определение. Вы должны использовать объекты Dictionary в своем коде, когда вам нужен ключ, чтобы иметь значение. Если значение ключа не имеет значения, вам следует взглянуть на некоторую другую структуру данных, например, на связанный список или даже на массив.

0 голосов
/ 22 июня 2016

Это лучший способ правильно найти значение, к которому прикреплена какая-то уникальная ссылка. Когда его использовать? Просто используйте его всякий раз, когда вы видите, что ваш код выиграет от этого. Если я знаю, что мне понадобится какое-то значение, и так получилось, что существует какое-то уникальное свойство, я его использую. В проекте, над которым я сейчас работаю, мы используем его, чтобы связать значение qrcode с именем человека, владеющего кодом. Таким образом, у нас есть базовая система, которая сообщает машине, кто является владельцем кода. Лучший способ узнать, стоит ли вам пользоваться им.

0 голосов
/ 20 мая 2010

Интересно, что я бы сказал, что в важном смысле традиционный словарь - действительно большое заявление о переходе. Есть статический набор определяемых слов.

Экземпляр словаря, с другой стороны, наиболее полезен, когда ваш набор ключей / слов либо (а) не является статическим, и / или (б) не известен во время компиляции. Это может произойти, если вы вытаскиваете группы пар ключ / значение из базы данных или выполняете вычисления, которые имеют некоторый тип группировки, где группировка является динамической, например, подсчет количества каждой марки / модели автомобилей сотрудников компании.

...