Ich bin relativ neu in Java und ich habe eine Frage darüber, welche Art von Datenstruktur für meinen Fall am besten wäre. Ich habe eine Menge von Daten, die im wesentlichen Schlüssel-Wert-Paare sind, jedoch kann jeder Wert mehreren Schlüsseln entsprechen und jeder Schlüssel kann mehreren Werten entsprechen. Ein vereinfachtes Beispiel wäre:Welche Java-Datenstruktur ist am besten für Zwei-Wege-Multi-Value-Mapping
- Red-Apple-
- Grün-Apple-
- Red-Erdbeere
- Grün-Trauben
- Purple-Trauben
das obige Beispiel betrachtet, Ich muss zurückgeben können, welche Farbe Äpfel ich habe und/oder welche roten Früchte ich habe. Die tatsächlichen Daten werden dynamisch basierend auf einer Eingabedatei erzeugt, wobei jeder Satz irgendwo zwischen 100 und 100.000 Werten liegt und jeder Wert kann hunderten von Werten in dem anderen Satz entsprechen.
Was wäre die effizienteste Methode zum Speichern und Parsen dieser Daten? Ich würde eine Java-ähnliche Lösung bevorzugen, anstatt einer externen Datenbank.
This question ist verwandt, aber ich bin mir nicht sicher, wie man die Lösung in meinem Fall anwendet, da ich jeder Taste in beiden Richtungen mehrere Werte zuweisen müsste.
Wie wäre es mit einer Karte? http://docs.oracle.com/javase/7/docs/api/java/util/Map.html – Koogle
Es gibt auch diese Frage: http://stackoverflow.com/questions/2571652/java-many-to- Viele-Assoziations-Karte – Josh
@Josh - Danke, ich habe diese Frage bei meiner Suche nicht gefunden. Ich werde die Lösungen durchsehen, um zu sehen, ob ich sie erfolgreich für meine Daten implementieren kann. – user4588937