Ich habe eine Zeichenfolge []. Ich möchte überprüfen, ob dieses Set einen anderen String [] enthält.Containment in einem Satz von Zeichenfolgen in Java überprüfen
Set<String[]> s = new HashSet<String[]>();
s.add(new String[] {"lucy", "simon"});
System.out.println(s.contains(new String[] {"lucy", "simon"}));
Falsch wird jedoch gedruckt. Meine Vermutung ist, dass nur die Referenzen verglichen werden und nicht die tatsächlichen Strings. Es scheint, die einzige Option, die ich habe, ist eine Klasse zu erstellen, sagen Phrase, und implementieren hashCode()
und equals()
(die Arrays.hashCode(...)
verwenden).
Gibt es eine andere Möglichkeit zu erreichen, was ich will?
+1 für die tiefe gleich Erklärung – Barthelemy