"És most itt az ideje egy kicsi, de érdekes témának: a karakterlánc típusú konverzióknak."

"Javában bármilyen adattípus átalakítható Stringgé."

– Ez klasszul hangzik.

"Jobb, mint menő. Szinte minden típus implicit módon átalakítható karakterláncsá. Ez könnyen belátható, ha két változót adunk hozzá, ahol az egyik egy karakterlánc, a másik pedig valami más. A nem karakterlánc változót a rendszer átalakítja Húr."

"Nézzen meg néhány példát:"

Parancs Mi történik valójában
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);

Következtetés:  Ha hozzáadunk egy karakterláncot és "bármilyen más típust", akkor a második típus karakterláncsá alakul .

"Figyeljen a táblázat negyedik sorára. Minden művelet balról jobbra történik. Ezért az 5 + '\u0000' " hozzáadása megegyezik az egész számok hozzáadásával."

"Szóval, ha írok valami hasonlót String s = 1+2+3+4+5+"m", megkapom s = "15m" ?"

"Igen. Először összeadják a számokat, majd az összeget karakterláncra alakítják át."