Vergleich von zwei Objekten mit HashCodeJava

Java-Forum
Anonymous
 Vergleich von zwei Objekten mit HashCode

Post by Anonymous »

Ich habe eine Klasse, die Sets und Optionen enthält: < /p>

Code: Select all

class SomeRequest{

Set longs;
Optional name;
Optional opLongs;
Optional toBeIgnored;
Collection fields

}
< /code>
Ich suche nach Möglichkeiten, zwei Objekte der obigen Klasse zu vergleichen (wo ich zuvor einen Hashcode eines Objekts gespeichert habe), aber [url=viewtopic.php?t=14917]ich möchte[/url] bestimmte Felder ignorieren. Beachten Sie, dass ich, da dies nur ein Anwendungsfall ist, den HashCode 
nicht überschreiben möchte.

Code: Select all

private int getParameterHash(SomeRequest req){
SomeRequest newReq = new SomeRequest(
req.longs,
req.name,
req.opLongs,
null,    //because I want to ignore this for my use case
req.fields
);
return newReq.hashCode();
}
Ich speichere diesen Hash in DB. Wenn ich dann auf das zweite Objekt stoße, berechne ich diesen Hash und vergleiche ihn mit dem, was ich bereits muss, um sicherzustellen, dass sie gleich sind.
Fragen: < /p>
  • Gibt es eine bessere Möglichkeit, dies zu tun? < /li>

    Code: Select all

    Set
    kümmert sich nicht um Reihenfolge (1. und 3. Felder), aber die Sammlung do (letztes Feld). Wie kann ich die Reihenfolge ignorieren?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post