8.581
Bearbeitungen
Jneug (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
{{Navigation}} | {{Navigation}} | ||
== Zeichenketten in Java == | == Zeichenketten in Java == | ||
Im Gegensatz zu den [[wikipedia:Primitive Datentypen| | Im Gegensatz zu den [[wikipedia:Primitive Datentypen|primitiven Datentypen]] wie <code>byte</code>, | ||
<code>int</code> oder <code>boolean</code> sind Zeichenketten in Java Objekte der | <code>int</code> oder <code>boolean</code> sind Zeichenketten in Java Objekte der | ||
[https://docs.oracle.com/javase/8/docs/api/java/lang/String.html Klasse String]. Das bedeutete, dass jeder | [https://docs.oracle.com/javase/8/docs/api/java/lang/String.html Klasse String]. Das bedeutete, dass jeder | ||
Zeile 16: | Zeile 17: | ||
'''Hinweis''' Auf einem <code>int</code> können zum Beispiel keine Methoden aufgerufen werden, da Integer | '''Hinweis''' Auf einem <code>int</code> können zum Beispiel keine Methoden aufgerufen werden, da Integer | ||
zunächst keine Objekte sind. Die Java Klassenbibliothek enthält aber auch für diese ''primitiven Datentypen'' | zunächst keine Objekte sind. Die Java Klassenbibliothek enthält aber auch für diese ''primitiven Datentypen'' | ||
eigene Klassen. | eigene Klassen. Etwa die Klasse {{Java API|java.lang.Integer}}. Sie enthält hilfreiche Klassenmethoden zum Umgang mit Integern. | ||
Sie enthält | |||
{{Info:End}} | {{Info:End}} | ||
<!--- | |||
Da Strings Objekte sind, kann es bei ihrer Verwendung zu unerwarteten Fehlern kommen. Ein häufiges Problem ist der | Da Strings Objekte sind, kann es bei ihrer Verwendung zu unerwarteten Fehlern kommen. Ein häufiges Problem ist der | ||
Vergleich von Strings: | Vergleich von Strings: | ||
Zeile 47: | Zeile 48: | ||
Jetzt ist die Ausgabe wie erwartet <code>Die Strings sind gleich.</code>. | Jetzt ist die Ausgabe wie erwartet <code>Die Strings sind gleich.</code>. | ||
---> | |||
== Zeichenketten formatieren == | == Zeichenketten formatieren == | ||
Zeichenketten müssen in Programmen | Zeichenketten müssen in Programmen regelmäßig zur Laufzeit des Programms aus variablen Inhalten zusammengesetzt | ||
werden. Am Ende des Würfelspiels könnte man | werden. Am Ende des Würfelspiels könnte man beispielsweise die Nachricht ''"Spieler 1 hat gewonnen"'' bzw. ''"Spieler 2 | ||
hat gewonnen"'' anzeigen lassen. Die Nummer des Spielers ist hier variabel, je nachdem, welcher Spieler gewonnen hat. | hat gewonnen"'' anzeigen lassen. Die Nummer des Spielers ist hier variabel, je nachdem, welcher Spieler gewonnen hat. | ||
Noch schöner wäre es, wenn zusätzlich der Name des Spielers angezeigt würde. | Noch schöner wäre es, wenn zusätzlich der Name des Spielers angezeigt würde. | ||
Um mit solchen Situationen umzugehen haben sich Zeichenketten mit besonderen Formatierungszeichen und die | Um mit solchen Situationen umzugehen, haben sich Zeichenketten mit besonderen Formatierungszeichen und die {{Java API|java.lang.String|format-java.lang.String-java.lang.Object...-|format-Methode}} etabliert. Für obige Situation könnte der String wie folgt aussehen: | ||
etabliert. Für obige Situation könnte der String wie folgt aussehen: | |||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
Zeile 63: | Zeile 62: | ||
Die Formatierungszeichen beginnen jeweils mit einem <code>%</code>. Das Zeichen <code>%d</code> steht für '''''d'''ecimal | Die Formatierungszeichen beginnen jeweils mit einem <code>%</code>. Das Zeichen <code>%d</code> steht für '''''d'''ecimal | ||
number'', das Zeichen <code>%s</code> für '''''S'''tring''. An Stelle des ersten Platzhalters soll also eine Zahl (in diesem Fall | number'', das Zeichen <code>%s</code> für '''''S'''tring''. An Stelle des ersten Platzhalters soll also eine Zahl (in diesem Fall eine Ganzzahl), an Stelle des Zweiten eine Zeichenkette eingesetzt werden. Mittels <code>format</code> kann man nun | ||
eine Ganzzahl), an Stelle des Zweiten eine Zeichenkette eingesetzt werden. Mittels <code>format</code> kann man nun | |||
beliebige Werte einfügen: | beliebige Werte einfügen: | ||
Bearbeitungen