Associative array: Difference between revisions

Content added Content deleted
No edit summary
(Perl: mention hash table)
Line 1: Line 1:
[[Category:Encyclopedia]]An '''associative array''' is a collection indexed by arbitrary data types, not just small integers. Whereas an [[array]] is typically implemented as many same-sized items stored in a contiguous block of memory, an associative array must be implemented via a more complex data structure, such as a hash table, a list, or some other type of map.
[[Category:Encyclopedia]]An '''associative array''' is a collection indexed by arbitrary data types, not just small integers. Whereas an [[array]] is typically implemented as many same-sized items stored in a contiguous block of memory, an associative array must be implemented via a more complex data structure, such as a hash table, a list, or some other type of map.


The terminology and semantics of these vary among different programming languages. For example in Perl they are called ''"hashes"'' (because a [[hash function]] is used in the underlying implementation) while in Python they are called ''"dictionaries"'' (by analogy to the normal English usage of the term: an indexed reference by which keys (words) are associated with values (definitions)). In [[Lua]] they are called ''"tables."'
The terminology and semantics of these vary among different programming languages. For example in Perl they are called ''"hashes"'' (from abbreviating “hash table”, the underlying implementation) while in Python they are called ''"dictionaries"'' (by analogy to the normal English usage of the term: an indexed reference by which keys (words) are associated with values (definitions)). In [[Lua]] they are called ''"tables."'