Wie wandle ich einen int-Wert in einen String?

Primitive Datentypen wie int oder char können nicht durch einfaches casting in einen String gewandelt werden, sondern müssen über Instanzen der jeweiligen Wrapper-Klasse gewandelt werden.

Um z.B. einen Integer in einen String zu wandeln, bietet die Klasse Integer die Methode toString() in dreifach überladener Form, davon zwei statischen Versionen.
Der folgende Quelltext zeigt die drei Möglichkeiten des Typwandels:

public class Int2String {  
    public static void main(String[] args){
        int i=123;
        Integer meinInteger = Integer.valueOf(i);
        System.out.println(meinInteger.toString());  // 123
        System.out.println(Integer.toString(i));     // 123
        System.out.println(Integer.toString(i, 2));  // 1111011
        System.out.println(Integer.toString(i, 16)); // 7b
    }
}

Die Variable i wird mit einem ganzzahligen Wert belegt. Eine Instanz der Klasse Integer wird durch die statische Methode valueOf() gebildet. Ihr wird die Variable (oder natürlich auch das int-Literal direkt) als Argument übergeben. Die Methode toString() der Wrapper-Klasse Integer wandelt dann das Integer-Objekt in einen String1.
Für die zweite Ausgabe wird toString() als statische Methode mit dem zu wandelnden Wert als Argument verwendet. Die dritte und vierte Ausgabe nutzt toString() mit zwei Parametern. Der zweite gibt dabei die Radix als Basis des genutzten Stellenwertsystems an.

1) Im vorliegenden Fall könnte die Variable natürlich auch ohne explizites Umwandeln ausgegeben werden. Die Methode println() besitzt interne casting-Methoden für vielerlei Datentypen.

Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.