I cannot say for AS3 implementation because I never tried it. (Which is the original subject of this topic.)
In AS1, AS2 and javascript, I am pretty sure that all objects (including Arrays) are key/value maps. (i.e. Associative arrays) http://en.wikipedia.org/wiki/Associative_array#JavaScript It is very possible that the internal implementation is not a "hashmap", but I still think it is a highly efficient map of some sort because this is so central to the language. ...at least this is what I think. I might be completely wrong. B. 2006/5/12, Ron Wheeler <[EMAIL PROTECTED]>:
I would be a little surprised. There does not seem to be any way to control the hash parameters and every array would have a lot of wasted space for nothing and without any way to control the hash size and the percent utilization, you would not get a lot of advantage for the big arrays. The Java HashMap defaults are pretty modest and would yield less than optimal performance with a big array. You can set the parameters if you have a big array and know a bit about the "randomness" of your keys to get fast lookups with a reasonable trade-off in wasted space Perhaps someone who knows the Flash Player internals could tell for sure. Ron Bernard Poulin wrote: > mmm... Are you implying that ActionScript objects are not hashmaps? > I thought they were *all* hashmaps (even Arrays are hashmaps). Every > method > call that you do involves at least one hash lookup. > > B. > > 2006/5/10, Ron Wheeler <[EMAIL PROTECTED]>: >> >> It appears that a HashMap is a Java class that uses a hash on the "key" >> to store its keys and values. >> http://java.sun.com/j2se/1.4.2/docs/api/java/util/HashMap.html >> This would speed up lookup if you have a large set of keys. >> If you do not need the speed or do not have a large collection of keys >> to store, an array object would seem to give the same functionality in >> ActionScript. >> This leaves the implementation of the array to Flash and it is likely a >> simple structure that has to be searched sequentially (by the Flash VM) >> to get the associated value. >> >> It you really need a hashing array that can handle large numbers of >> key/value pairs, you probably have to write one. This is an old concept >> and you can likely find a few design ideas and probably some code if you >> search for it. >> >> If you are converting code and want to create a HashMap class that has >> the same methods as HashMap in Java, you could fake the internal storage >> technology with a simple Array. it would be faster for a small set of >> values and would get a bit slower as the number of keys increased. >> You could start with a dumb HashMap class and then make it a true >> hashing data store later without having to rewrite your code. >> HashMap was only added to Java in Java 1.1 and they lived without it >> before then. >> >> Ron >> >> Joshua Graham wrote: >> > Bit strange, but that works, thanks. >> > >> > Joshua >> > >> > On 10 May 2006, at 12:06, Lee McColl-Sylvester wrote: >> > >> >> Well, in AS2, it's called an object ;) >> >> >> >> Lee >> >> >> >> >> >> >> >> -----Original Message----- >> >> From: [EMAIL PROTECTED] >> >> [mailto:[EMAIL PROTECTED] On Behalf Of >> Joshua >> >> Graham >> >> Sent: 10 May 2006 11:19 >> >> To: [email protected] >> >> Subject: [Flashcoders] HashMap? >> >> >> >> Is there an AS3 equivalent of the java HashMap? >> >> >> >> Basically, I just need the ability to set key/value pairs quickly/ >> >> easily. >> >> _______________________________________________ >> >> [email protected] >> >> To change your subscription options or search the archive: >> >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> >> >> >> Brought to you by Fig Leaf Software >> >> Premier Authorized Adobe Consulting and Training >> >> http://www.figleaf.com >> >> http://training.figleaf.com >> >> _______________________________________________ >> >> [email protected] >> >> To change your subscription options or search the archive: >> >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> >> >> >> Brought to you by Fig Leaf Software >> >> Premier Authorized Adobe Consulting and Training >> >> http://www.figleaf.com >> >> http://training.figleaf.com >> >> >> > >> > >> > >> > >> ------------------------------------------------------------------------ >> > >> > _______________________________________________ >> > [email protected] >> > To change your subscription options or search the archive: >> > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> > >> > Brought to you by Fig Leaf Software >> > Premier Authorized Adobe Consulting and Training >> > http://www.figleaf.com >> > http://training.figleaf.com >> _______________________________________________ >> [email protected] >> To change your subscription options or search the archive: >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> >> Brought to you by Fig Leaf Software >> Premier Authorized Adobe Consulting and Training >> http://www.figleaf.com >> http://training.figleaf.com >> > _______________________________________________ > [email protected] > To change your subscription options or search the archive: > http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > > Brought to you by Fig Leaf Software > Premier Authorized Adobe Consulting and Training > http://www.figleaf.com > http://training.figleaf.com > > > _______________________________________________ [email protected] To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
_______________________________________________ [email protected] To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com

