Ich weiß, dass die HashSet.contains() -Methode die equals-Methode verwendet, um die Gleichheit zu prüfen, da sie den Zeiger überprüft, um festzustellen, ob sie gleich sind.HashSet in Java - Vergleich und Hashtasten
Ich brauche es, um das tatsächliche Objekt am Zeiger auf Gleichheit zu überprüfen - in meinem speziellen Fall muss ich sehen, ob ein "Knoten" geöffnet wird (ein int [] Array) bereits in der HashSet. Dies ist wichtig für meinen Suchalgorithmus, so dass die Implementierung meiner bidirektionalen iterativen Vertiefungssuche nicht so naiv ist.
Ich würde immer noch gerne lineare Suchzeit, oder vielleicht sollte ich eine andere Klasse verwenden?
Danke für Ihre Hilfe.
Sorry, aber warum bekommst du es nicht(), wenn es bereits in einem hashset ist? Dies wird O (1) sein, wenn der Hash-Satz nicht zu voll ist. – j13r
@ j13r: Das OP möchte 'contains()' verwenden, was mit 'equals()' überprüft wird. –
Soweit ich sehen kann, gibt es kein .get() für Java HashSets –