Ich brauche eine Sammelklasse, die beides hat: schnellen Index- und Hash-Zugriff. Jetzt habe ich ArrayList. Es hat gute Indexzugriffe, aber seine contains
Methode ist nicht performant. HashSet hat eine gute contains
Implementierung, aber keinen indizierten Zugriff. Welche Sammlung hat beides? Wahrscheinlich etwas von Apache? Oder sollte ich meine eigene Sammlungsklasse erstellen, die beide hat: ArrayList für indizierte Zugriffe und HashSet für contains
überprüfen?Sammlung mit Index- und Hash-Zugriff
Nur zur Klarstellung: Ich brauche beide get(int index)
und contains(Object o)
Sie besitzen Datenstruktur, die beide enthält (oder eine Variation davon) ist wahrscheinlich der Weg zu gehen. – Dukeling
Können Sie erklären, warum Sie das wollen? –
Ja kann ich. Ich habe Legacy-Code, der fast alle Methoden eines List-Objekts (ArrayList) verwendet. Ich habe keine Chance, es neu zu schreiben, aber ich möchte seine Leistung erhöhen.Das Hauptproblem hier sind die Methoden contains und indexOf, da sie eine lineare Leistung haben. –