Присвоение нового значения к Хеш-таблице, не используя Добавить метод

if ($pictureExist == 0) {
                    $filename = "uploads/profile".$id."*";
                    $fileinfo = glob($filename);
                    $fileext = explode(".", $fileinfo[0]);
                    $fileactualext = $fileext[1];
                    echo "<div class=userPicture><img src='uploads/profile".$id.".".$fileactualext."?".mt_rand()."'></div>";
                } 
5
задан stovroz 25 March 2009 в 16:14
поделиться

3 ответа

Исправлять ответ Sergej немного...

  • Add действительно выдаст исключение, если ключ уже будет существовать.
  • Используя индексатор, поскольку метод set не выдаст исключение (если Вы не укажете пустой ключ).
  • Используя индексатор, поскольку метод считывания выдаст исключение, если ключ не будет существовать и если Вы используете дженерик IDictionary<TKey,TValue>. В недженерике IDictionary реализации (например. Hashtable) Вы получите нулевую ссылку. Вы не можете использовать пустой ключ ни для одного, хотя - Вы доберетесь ArgumentNullException.
14
ответ дан 18 December 2019 в 09:53
поделиться

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

3
ответ дан 18 December 2019 в 09:53
поделиться

Различие находится в обработке дублирующихся значений.

myHashtable. Добавьте (), бросает ArgumentException, если HashTable уже содержит элемент с Вашим ключом. myHashTable[myNewKey] заменяет старое значение новым.

0
ответ дан 18 December 2019 в 09:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: