„Jetzt ist es Zeit für ein kleines, aber interessantes Thema: Umwandlungen in den Datentyp String.“

„In Java kann jeder Datentyp in einen String umgewandelt werden.“

„Das klingt cool.“

„Das ist sogar noch besser als cool. Fast jeder Typ kann implizit in einen String umgewandelt werden. Das ist leicht zu erkennen, wenn wir zwei Variablen hinzufügen, wobei eine ein String und die andere etwas anderes ist. Die Nicht-String-Variable wird in einen String umgewandelt.“

„Sieh dir ein paar Beispiele an:“

Befehl Das passiert tatsächlich
int x = 5;
String text = "X=" + x;
int x = 5;
String s = "X=" + Integer.toString(x);
Cat cat = new Cat("Oscar");
String text = "My cat is " + cat;
Cat cat = new Cat("Oscar");
String text = "My cat is" + cat.toString();
Object o = null;
String text = "Object is " + o;
Object o = null;
String text = "Object is " + "null";
String text = 5 + '\u0000' + "Log";
int i2 = 5 + (int) '\u0000';
String text = Integer.toString(i2) + "Log";
String text = "Object is " + (float) 2 / 3;
float f2 = ((float) 2) / 3;
String text = "Object is " + Float.toString(f2);

Fazit: Wenn wir einen String und einen 'beliebigen anderen Typ' addieren, wird der zweite Typ in einen String umgewandelt.

„Beachte Zeile vier in der Tabelle. Alle Operationen werden von links nach rechts ausgeführt. Deshalb ist das Addieren von 5 +'\u0000'" das gleiche wie das Addieren von ganzen Zahlen.“

„Wenn ich also so etwas schreibe wie String s = 1+2+3+4+5+"m", dann erhalte ich s = "15m" ?“

„Ja. Die Zahlen werden zuerst addiert und dann wird die Summe in eine Zeichenkette umgewandelt.“