Das Assoziative Array ist eine Sonderform eines Arrays. Es verwendet keinen numerischen Index, sondern einen so genannten Schlüssel zur Indizierung und damit zur Adressierung eines Elements. Idealerweise werden die Schlüssel so gewählt, dass eine für die Programmierer nachvollziehbare Verbindung zwischen Schlüssel und Datenwert besteht. Mathematisch betrachtet wird durch die Wertezuordnungen im assoziativen Array eine Funktion mit endlichem Wertebereich beschrieben. Eine Implementation ist mit Bäumen möglich, die weitaus häufigste Umsetzung ist jedoch die Hashtabelle.
Programmiersprachen, die assoziative Arrays unterstützen, sind z. B. Perl, PHP, Ruby, Smalltalk, Tcl, C++, Objective-C (als Klasse der Standardbibliothek), Java, JavaScript, Delphi (als Array-Property) und Visual Basic. Statt von einem assoziativen Array spricht man auch von einem Dictionary (Smalltalk, Python, Objective-C), einer Map (C++, Java), einem Hash (Perl, Ruby) oder einer Hashtable/Hashmap (Java).
Eindimensionales Assoziatives Array in Ada Person = ( Vorname => Hans, Name => Mustermann, Geburtstag => 01.01.01, Wohnort => Musterstadt), Person("Name")
Das gleiche Beispiel in Tcl
set person(Vorname) Hans set person(Name) Mustermann set person(Geburtstag) 01.01.01 set person(Wohnort) Musterstadt puts $person(Name)
Das gleiche Beispiel in PHP
$person = array ( "Vorname" => "Hans", "Name" => "Mustermann", "Geburtstag" => "01.01.01", "Wohnort" => "Musterstadt");
oder
$person* = "Hans"; $person* = "Mustermann"; $person* = "01.01.01"; $person* = "Musterstadt";
echo ($person*);
Das gleiche Beispiel in Perl
%person = ( 'Vorname' => 'Hans', 'Name' => 'Mustermann', 'Geburtstag' => '01.01.01', 'Wohnort' => 'Musterstadt' ); print $person{'Name'};
Das gleiche Beispiel in Java
Hashtable
Das gleiche Beispiel in C++
map
Das gleiche Beispiel in Python
person = { "Vorname" : "Hans", "Name" : "Mustermann", "Geburtstag": "01.01.01", "Wohnort" : "Musterstadt" } print person*
Das gleiche Beispiel in Ruby
person = { :Vorname => 'Hans', :Name => 'Mustermann', :Geburtstag => '01.01.01', :Wohnort => 'Musterstadt'} puts person*
Asociativní pole | Associative array | 連想配列 | Associatieve array | Tablica asocjacyjna | Ассоциативный массив
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Assoziatives Array".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world