Aufruf von ContainsKey auf einer Hashmap mit benutzerdefinierter Klasse

8

Ich habe eine Farbklasse, die ich in die Hashmappe einfüge. Ich möchte containsKey auf der hashmap aufrufen, um sicherzustellen, dass das Objekt bereits in der hashmap vorhanden ist

Farbklasse

%Vor%

HashMap

%Vor%

Seit c1 hat name rot. Ich möchte, dass System.out den Wert true zurückgibt, da der Schlüssel, der bereits in der Map vorhanden ist, c , name red

hat

Wie kann dies erreicht werden?

    
birdy 08.10.2012, 02:47
quelle

1 Antwort

14

Ihre benutzerdefinierte Klasse Color sollte die Methoden equals() und hashcode() überschreiben, um zu erreichen, was Sie wollen.

Wenn Sie benutzerdefinierte Objekte als Schlüssel für collections verwenden und Suche mit Objekt durchführen möchten, sollten Sie equals() und hashcode() Methoden richtig überschreiben.

Lesen Sie auch:

Überschreibe equals und hashCode in Java

    
kosa 08.10.2012, 02:48
quelle

Tags und Links