In diesem Tutorial lernen wir, wie man mit Strings in Java arbeitet. Strings, die in der Programmierung so weit verbreitet sind, sind eine Folge von Zeichen. In der Programmiersprache Java sind Strings ein Objekt. Die Java-Plattform bietet eine Klasse
String
zum Erstellen und Bearbeiten von Zeichenfolgen.
Strings erstellen
Der einfachste Weg, einen String zu erstellen, sieht so aus:String greeting = "Hello world!";
In diesem Fall „Hallo Welt!“ ist ein String-Literal (d. h. eine Konstante), das aus einer in Anführungszeichen eingeschlossenen Zeichenfolge besteht. Immer wenn der Compiler auf ein String-Literal stößt, erstellt er ein Objekt vom Typ String
mit einem Wert, in unserem Fall „Hello World!“. Wie jedes andere Objekt kann eine Zeichenfolge mit dem Schlüsselwort erstellt werden new
. Die Klasse String
verfügt über drei Konstruktoren, mit denen Sie ein Objekt mithilfe verschiedener Quellen erstellen können, beispielsweise eines Zeichenarrays .
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
Die letzte Zeile des Beispiels gibt „Hallo“ auf dem Bildschirm aus . Die Klasse String
ist unveränderlich. Sobald wir ein Objekt erstellt haben, können wir es nicht mehr ändern. Einige Methoden, die wir uns weiter unten ansehen, können dieses Problem beheben. Weil String
unveränderlich, diese Methoden erstellen eine neue Zeichenfolge und geben sie zurück, die das Ergebnis der Operation enthält.
Java-Stringlänge
Methoden zum Abrufen von Informationen über eine Zeichenfolge werden Zugriffsmethoden genannt. Eine dieser Methodenlength()
. Es gibt die Anzahl der Zeichen in der Zeichenfolge zurück. Im folgenden Beispiel len
ist es 17:
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
Die Variable palindrome
enthält ein Palindrom, d.h. ein Wort oder ein Satz, der sich in beide Richtungen gleich liest. Schreiben wir ein kleines Programm, das ein Palindrom umkehrt. Wir verwenden die Methode charAt(i)
, die das i -te Zeichen der Zeichenfolge zurückgibt, beginnend mit 0
.
public class StringDemo {
public static void main(String[] args) {
String palindrome = "Dot saw I was Tod";
int len = palindrome.length();
char[] tempCharArray = new char[len];
char[] charArray = new char[len];
//создадим из строки
// массив символов
for (int i = 0; i < len; i++) {
tempCharArray[i] =
palindrome.charAt(i);
}
// перевернем массив символов
for (int j = 0; j < len; j++) {
charArray[j] =
tempCharArray[len - 1 - j];
}
String reversePalindrome =
new String(charArray);
System.out.println(reversePalindrome);
}
}
Das Programm wird gedruckt
doT saw I was toD
Um einen String umzukehren, haben wir zunächst ein Array von Zeichen aus dem String erstellt (die erste Schleife), dann ein neues Array erstellt, in das wir das invertierte erste Array geschrieben haben, und dann einen neuen String erstellt. Die Klasse String
enthält eine Methode getChars()
, die ein Array von Zeichen zurückgibt, sodass die erste Schleife durch die Zeile ersetzt werden kann:
palindrome.getChars(0, len, tempCharArray, 0);
String-Verkettung
Die KlasseString
implementiert eine Methode zum Verketten zweier Zeichenfolgen:
string1.concat(string2);
Dieser Code gibt einen neuen String zurück, der string1
ihn enthält und angehängt wird string2
. Sie können diese Methode auch mit String-Literalen verwenden:
"My name is ".concat("Rumplestiltskin");
Am häufigsten werden Zeichenfolgen mit dem +
Operator „ “ verknüpft, Beispiel:
"Hello," + " world" + "!"
Das Ergebnis ist die Zeichenfolge „ Hello, world!“ " Der +
Operator „ “ wird häufig zum Anzeigen von Informationen verwendet, zum Beispiel:
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
Der Code gibt „ Dot saw I was Tod “ aus. Eine solche Verkettung kann in Verbindung mit beliebigen anderen Objekten verwendet werden. Bei Objekten, die keine Strings sind, wird die Methode aufgerufen toString()
, die sie in Strings umwandelt. Festlegen des Ausgabeformats für Zeichenfolgen Wir haben uns bereits mit Methoden befasst printf()
, mit denen format()
wir die Ausgabe von Zahlen formatiert haben. Die Klasse String
verfügt über eine ähnliche Methode, die einen String zurückgibt. Mit einer statischen Methode format()
ist es möglich, eine Bestandsvorlage zu erstellen, die beispielsweise stattdessen wiederverwendet werden kann:
System.out.printf ("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, "
"and the string is %s",
floatVar, intVar, stringVar);
Sie können diesen Code verwenden:
String fs;
fs = String.format("The value of the float " +
"variable is %f, while " +
"the value of the " +
"integer variable is %d, " +
" and the string is %s",
froatVar, intVar, stringVar);
System.out.println(fs);
Das ist alles! :) Link zur Quelle: Strings in Java
GO TO FULL VERSION