Ich möchte einige große Objekte vergleichen, die Bäume und Caches darstellen etwas um zu vermeiden, dass das neue Objekt jedes Mal mit einem bereits vorhandenen Objekt verglichen wird...
Die Frage ist, was wäre das Beste? (ein Kompromiss zwischen Leistung und Kollisionen...).
Einerseits habe ich eine reguläre HashCode-Funktion, die auf dem Wert verschiedener Felder basiert (in Anlehnung an das Kapitel 3 von leistungsfähiges Java . Aber ich bin nicht in der Lage, die potenziellen Kollisionen zu bewerten, die ein solcher Ansatz mit sich bringt.
Auf der anderen Seite habe ich den MessageDigest-Ansatz aus der Standard-Java-Distribution mit SHA-1-Algorithmus. Ich gehe davon aus, dass dies nicht effizient ist, aber ich habe vielleicht weniger Kollisionen. Liege ich da richtig? Ist dies eine korrekte Lösung in meinem Kontext oder liege ich völlig falsch?
Das Problem ist, dass ich nicht weiß, wie groß die Objekte sein werden. Bitte beachten Sie auch, dass der berechnete Wert nicht in einer HashTable verwendet werden soll.
Danke...