Das Wissensportal für IT-Professionals. Entdecke die Tiefe und Breite unseres IT-Contents in exklusiven Themenchannels und Magazinmarken.

SIGS DATACOM GmbH

Lindlaustraße 2c, 53842 Troisdorf

Tel: +49 (0)2241/2341-100

kundenservice@sigs-datacom.de

Alles, was Sie schon immer über Java Maps wissen wollten

Die Speicherung von Daten als Schlüssel-Wert-Paare war schon immer eine wichtige Anforderung, nicht erst seit Bibliotheksregistern mit Karteikarten. Auch Dateisysteme sind im Wesentlichen nichts anderes, mit dem vollständigen Pfad einer Datei bekommt man Zugriff auf deren Inhalt (und Metadaten). Mit Online-Speicherung wie S3 und den vielfältigen Key-Value-No-SQL-Datenbanken werden leicht Petabyte-Größen erreicht. Je nach Programmiersprache hat die Datenstruktur zwar einen anderen Namen – Map (Java), Dict (Python), Hash (Ruby), Dictionary (C#), Object (JavaScript), assoziatives Array (PHP), aber das Grundkonzept wird in allen Sprachen unterstützt.

Geschichte der Maps im JDK

In Java ist die java.util.Hashtable seit JDK 1.0 verfügbar. Sie war zwar praktisch, aber etwas schwergewichtig. Wie die anderen alten Container-Implementierungen waren die meisten ihrer Methoden synchronisiert, was für lange Zeit eine hohe Leistungseinbuße zur Folge hatte. Außerdem ist es nicht genug, nur einzelne Methoden abzusichern, sobald diese unabhängig voneinander genutzt werden, muss man den ganzen Block mittels synchronized schützen. So wurden die Entwickler,…