Der Vergleich von Zeichenketten spielt beispielsweise für die Programmsteuerung oder für datenbankähnliche Anwendungen eine Rolle. Da die Variablennamen für Zeichenketten aber die Adresse enthalten, können einfache Vergleichsoperatoren wie == oder != nicht verwendet werden. An ihre Stelle treten bestimmte String-Methoden.
Warum liefert der folgende Vergleich den Boole'schen Wert false?
public class string7 {
public static void main(String [] args) {
String s = new String("hallo");
System.out.println("hallo" == s);
}
}
liefert
false