2.14.1 | Erzeugen von Strings |
Die einfachste Möglichkeit, ein neues Exemplar von String zu erzeugen, besteht in der direkten Initialisierung bei der Vereinbarung eines Verweises. Zur Initialisierung von Strings mit Literalen definiert Java eine vereinfachte Syntax:String s = "Demo-String";Alternativ kann man auchString s = new String("Demo-String");schreiben. Der Konstruktor in diesem Beispiel erhält einen String als Argument, den er für das neu erzeugte Objekt kopiert. Das neue String-Objekt arbeitet dann auf der Kopie. Darüber hinaus besitzt die Klasse String Konstruktoren, mit denen sich Strings aus Arrays mit Elementtyp char oder byte erzeugen lassen.
An dieser Stelle sei noch einmal betont, dass char-Arrays und Strings nicht dasselbe sind, wie das folgende Beispiel zeigt:char[] c_array = {'A', 'B', 'C'}; String s; s = c_array; // Fehler s = new String(c_array); // so geht'sGültig ist nur die zweite Zuweisung an den String s, weil ein Verweis auf String nicht zuweisungskompatibel zu einem char-Array ist. Die letzte Anweisung dagegen funktioniert, da hier ein Konstruktor der Klasse String aufgerufen wird. Dieser Konstruktor erzeugt aus dem übergebenen char-Array einen String.