Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Dictionary над ассоциативным массивом (http://www.flasher.ru/forum/showthread.php?t=170378)

Universe 23.10.2011 18:39

Dictionary над ассоциативным массивом
 
Пытаюсь разобраться с объектов Dictionary и не могу понять в чём его весомые отличия от обычного ассоциативного массива?

Bgg 23.10.2011 18:43

В том, что в качестве ключей могут быть объекты, а не только строка.

Universe 23.10.2011 19:24

а это существенная разница?

Inet_PC 23.10.2011 19:36

Да, существенная.

Добавлено через 9 минут
Код AS3:

var spr1: Sprite = new Sprite();
var spr2: Sprite = new Sprite();
var a  : Object = {};
var d  : Dictionary = new Dictionary();
 
a[spr1] = '1';
a[spr2] = '2';
 
d[spr1] = '1';
d[spr2] = '2';
 
trace(a[spr1]);
trace(a[spr2]);
 
trace(d[spr1]);
trace(d[spr2]);

2
2
1
2

carrotoff 23.10.2011 19:50

Цитата:

а это существенная разница?
Разница ровно такая же, как между типом данных String и типом данных Object/etc..

goodguy 23.10.2011 20:07

Цитата:

а это существенная разница?
А по факту, смотря для чего это нужно. Я лично могу по пальцам одной руки пересчитать ситуации, когда мне нужен был именно Dictionary. В большинстве случаев можно обойтись простым объектом

Psycho Tiger 23.10.2011 23:32

Цитата:

Я лично могу по пальцам одной руки пересчитать ситуации, когда мне нужен был именно Dictionary.
Тогда, когда в качестве ключей нужны объекты? )

crazyone 24.10.2011 01:04

А еще у словаря есть weakKeys - тоже пару раз пригодилось.

goodguy 24.10.2011 07:28

Цитата:

Сообщение от Psycho Tiger (Сообщение 1041389)
Тогда, когда в качестве ключей нужны объекты? )

Я как раз говорю о том, что объекты в качестве ключей нужны очень редко. Да и то, это лишь один из подходов. Можно обойтись вообще без этого

crazyone 24.10.2011 11:53

Да, можно все на ассемблере писать.


Часовой пояс GMT +4, время: 15:31.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.