Trending Articles
More Pages to Explore .....
Was ist der Output des folgenden Codes?
String a = new String(“Test”);
StringBuffer b = new StringBuffer(“Test”);
StringBuffer c = new StringBuffer(“Test”);
System.out.println(a.equals(b));
System.out.println(b==c);
System.out.println(b.equals(c));
Antwort/ answer | |
---|---|
Der Output ist
false Dies ist darin begründet, dass die Klassen StringBuffer und StringBuilder keine eigene equals-Klasse deklarieren und somit der Rückgabewert immer false ist. Soll ein StringBuffer/StringBuilder mit einem String verglichen werden, muss er für den Vergleich in einen String umgewandelt werden, z.B. System.out.println(a.equals(b.toString())); // liefert nun den Wert true zurück
|