Zeichen und Zeichenketten ersetzen

Aus Byte-Welt Wiki
Wechseln zu: Navigation, Suche
Baustelle.png Dieser Beitrag wird derzeit noch bearbeitet. Der Text ist deshalb unvollständig und kann Fehler oder ungeprüfte Aussagen enthalten.

Stellen Sie sich vor, Sie möchten einen Geldbetrag in eine double Variable speichern, und dann diesen Geldbetrag in Euro auf der Konsole anzeigen lassen. Wir wollen in unsere double Variable 11 Euro und 12 Cent speichern. In den Fließkommazahlen dürfen Sie kein Komma verwenden, sondern müssen einen Punkt verwenden. So weit so gut. Am Ende wollen Sie unseren Geldbetrag auf der Konsole anzeigen lassen. Wenn sie das machen, werden Sie auf Ihrem Bildschirm folgende Zahl sehen: '11.12'. Wir wollen jedoch eine Zahl in diesem Format haben : 11,12. Wie machen wir das? Schauen Sie sich dieses Beispiel an:

public class Ersetzen {
 
	public static void main(String[] args) {
 
		double zahl = 11.12;
		String s 	= String.valueOf(zahl);
 
		char c 		= ',';
 
		s =  s.replace('.', c);
 
		System.out.println("Euro: " + s);
 
	}
 
}

Was haben wir hier gemacht? Erstmal haben wir eine double Variable deklariert und definiert. Danach haben wir mit Hilfe der String-Klasse unsere double Variable zu String umgewandelt, dafür haben wir valueOf()-Methode verwendet. Wir haben das getan, weil Strings aus Zeichenketten bestehen, und wir wollen ein Zeichen ersetzen, deshalb passt das ganz gut für das was wir vorhaben. Jetzt ist unsere Variable zahl nicht mehr von Typ double, sondern vom Typ String und wir können jetzt beliebigen Zeichen ersetzen. Dafür deklarieren wir eine Variable und speichern dort unsere Komma als Zeichen hinein. Jetzt benutzen wir die replace()-Methode der Klasse String und geben 2 Parameter an. Der erste Parameter ist das Zeichen, das wir ersetzen wollen und der zweite Parameter ist unser Zeichen, welches anderen Zeichen ersetzt. Unser Zeichen ist in der Variable c gespeichert, deshalb übergeben wir die als Parameter. Und dann geben wir unsere Zahl aus, die so aussieht: 11,12.
Mit dieser Methode kann man übrigens auch mehr als ein Zeichen ersetzen, in dem man der replace-Methode Strings übergibt.