Es gibt reichlich Möglichkeiten, aus irgendwas Text zu machen.
Wobei die Möglichkeiten unter dem Strich immer wieder auf das Gleiche hinaus laufen. An der Stelle einfach einmal etwas in die Details geschaut:
Das "" + myIntNumber wird zu folgendem:
1. Wenn bei dem + Operator ein Operand ein String ist, dann wird der zweite Teil zu einem String gemacht (
JLS 15.18.1)
2. Dies erfolgt nach den Vorgaben der JLS 5.1.11, was bedeutet:
2.1 Aus einem int Wert wird ein Integer erstellt mit new Integer(value);
2.2 Es wird toString() auf der Referenz aufgerufen.
Was dann passiert können wir auf dem Source ansehen - z.B. hier mal von OpenJDK 8.
2.2.1 toString() ruft static toString(int) auf (Das war der Vorschlag von
@httpdigest in #2!
2.2.2 toString(int) erstellt den String
Was man nun noch ansehen könnte:
String.valueOf(int)
Da könnte man also auch einmal im
Sourcecode des OpenJDK nachsehen:
- String.valueOf(int) ruft einfach ein Integer.toString(int) auf.
Generell bin ich ein Freund davon, Code immer so lesbar wie möglich zu gestalten. was einem aber am Beste gefällt, das darf jeder für sich selbst entscheiden. So nutze ich sehr gerne die Variante von
@Neumi5694. Die gefällt mir gut, weil sie einfach schnell zu lesen und zu schreiben ist. Ich sehe da aber durchaus mögliche Probleme bei der Reihenfolge und so: Der String kann auch am Ende sein, also sowas wie intWert + ".ter Platz" geht auch. Und nun kann ich evtl. davor noch eine andere Zahl schreiben und schreibe etwas wie: intWert1 + intWert2 + "xxxx" oder so. Abarbeitung links nach rechts und man hat eine Addition zuerst. Daher müsste dies ergänzt werden mit zusätzlichen Regeln a.la. "Bitte immer mit String Literal anfangen. ... Also es wird gleich deutlich: Es ist nicht "unproblematisch".
Aber mit der Exkursion haben wir dann die üblichen Verdächtigen abgehandelt denke ich mal:
- Integer.toString(int)
- String.valueOf(int)
- "" + intValue