Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Validierung von Strings in Java | Zeichenketten
Einführung in Java

Validierung von Strings in Java

Swipe um das Menü anzuzeigen

Beim Arbeiten mit Texteingaben geben Benutzer selten genau das ein, was erwartet wird – einige lassen Felder leer, andere tippen nur Leerzeichen, manche vergessen erforderliche Symbole. Deshalb muss eine Zeichenkette vor der Verwendung im Programm häufig validiert werden – das heißt, es wird überprüft, ob sie bestimmten Regeln entspricht.

Wir haben bereits grundlegende Werkzeuge wie isEmpty(), length() und contains() kennengelernt. Nun fügen wir einige weitere hinzu, die besonders in realen Validierungsszenarien nützlich sind.

isBlank()

Ein sehr häufiges Problem ist, wenn eine Zeichenkette technisch gesehen nicht leer ist, aber nur aus Leerzeichen besteht. Zum Beispiel könnte ein Benutzer einen Namen "eingeben", aber nur mehrmals die Leertaste drücken. .isBlank() behandelt solche Zeichenketten, die nur aus Leerzeichen bestehen, als ungültige Eingabe. Die Methode gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String customerName = " "; boolean isBlankName = customerName.isBlank(); System.out.println(isBlankName); } }

Obwohl customerName nicht vollständig leer ist, enthält es nur Leerzeichen – daher gibt .isBlank() true zurück und signalisiert, dass kein sinnvoller Inhalt vorhanden ist.

startsWith()

Manchmal muss sichergestellt werden, dass ein String einer bestimmten Struktur folgt. Beispielsweise muss jeder Bestellcode in unserem System mit "ORD" beginnen. .startsWith() prüft den Anfang des Strings und gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String orderCode = "ORD-2459"; boolean validOrderCode = orderCode.startsWith("ORD"); System.out.println(validOrderCode); } }

.startsWith("ORD") prüft die ersten drei Zeichen von orderCode — da sie übereinstimmen, wird true zurückgegeben, was bestätigt, dass der Code dem erwarteten Format entspricht.

endsWith()

Auch das Ende eines Strings kann validiert werden — besonders nützlich für Dateinamen oder Formate. Zum Beispiel, um sicherzustellen, dass eine Quittungsdatei tatsächlich ein PDF ist. Gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String receiptFile = "receipt.pdf"; boolean validReceiptFile = receiptFile.endsWith(".pdf"); System.out.println(validReceiptFile); } }

.endsWith(".pdf") prüft die letzten vier Zeichen von receiptFile — da sie mit ".pdf" übereinstimmen, wird true zurückgegeben.

Kombinierte Validierung

Echte Validierung besteht in der Regel nicht nur aus einer Überprüfung — es sind mehrere Regeln, die zusammenwirken. Beispielsweise kann die Validierung eines Benutzernamens erfordern, dass er nicht leer ist, mindestens 5 Zeichen enthält und keine Leerzeichen aufweist:

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { String username = "coffeeMaster"; boolean validUsername = !username.isBlank() && username.length() >= 5 && !username.contains(" "); System.out.println(validUsername); } }

Alle drei Bedingungen werden mit && kombiniert – der Benutzername muss jede einzelne Prüfung bestehen, um als gültig zu gelten. "coffeeMaster" ist nicht leer, hat mehr als 5 Zeichen und enthält keine Leerzeichen, daher ist validUsername true.

question mark

Was prüft .isBlank()?

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 6

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Validierung von Strings in Java

Beim Arbeiten mit Texteingaben geben Benutzer selten genau das ein, was erwartet wird – einige lassen Felder leer, andere tippen nur Leerzeichen, manche vergessen erforderliche Symbole. Deshalb muss eine Zeichenkette vor der Verwendung im Programm häufig validiert werden – das heißt, es wird überprüft, ob sie bestimmten Regeln entspricht.

Wir haben bereits grundlegende Werkzeuge wie isEmpty(), length() und contains() kennengelernt. Nun fügen wir einige weitere hinzu, die besonders in realen Validierungsszenarien nützlich sind.

isBlank()

Ein sehr häufiges Problem ist, wenn eine Zeichenkette technisch gesehen nicht leer ist, aber nur aus Leerzeichen besteht. Zum Beispiel könnte ein Benutzer einen Namen "eingeben", aber nur mehrmals die Leertaste drücken. .isBlank() behandelt solche Zeichenketten, die nur aus Leerzeichen bestehen, als ungültige Eingabe. Die Methode gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String customerName = " "; boolean isBlankName = customerName.isBlank(); System.out.println(isBlankName); } }

Obwohl customerName nicht vollständig leer ist, enthält es nur Leerzeichen – daher gibt .isBlank() true zurück und signalisiert, dass kein sinnvoller Inhalt vorhanden ist.

startsWith()

Manchmal muss sichergestellt werden, dass ein String einer bestimmten Struktur folgt. Beispielsweise muss jeder Bestellcode in unserem System mit "ORD" beginnen. .startsWith() prüft den Anfang des Strings und gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String orderCode = "ORD-2459"; boolean validOrderCode = orderCode.startsWith("ORD"); System.out.println(validOrderCode); } }

.startsWith("ORD") prüft die ersten drei Zeichen von orderCode — da sie übereinstimmen, wird true zurückgegeben, was bestätigt, dass der Code dem erwarteten Format entspricht.

endsWith()

Auch das Ende eines Strings kann validiert werden — besonders nützlich für Dateinamen oder Formate. Zum Beispiel, um sicherzustellen, dass eine Quittungsdatei tatsächlich ein PDF ist. Gibt einen boolean zurück.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String receiptFile = "receipt.pdf"; boolean validReceiptFile = receiptFile.endsWith(".pdf"); System.out.println(validReceiptFile); } }

.endsWith(".pdf") prüft die letzten vier Zeichen von receiptFile — da sie mit ".pdf" übereinstimmen, wird true zurückgegeben.

Kombinierte Validierung

Echte Validierung besteht in der Regel nicht nur aus einer Überprüfung — es sind mehrere Regeln, die zusammenwirken. Beispielsweise kann die Validierung eines Benutzernamens erfordern, dass er nicht leer ist, mindestens 5 Zeichen enthält und keine Leerzeichen aufweist:

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { String username = "coffeeMaster"; boolean validUsername = !username.isBlank() && username.length() >= 5 && !username.contains(" "); System.out.println(validUsername); } }

Alle drei Bedingungen werden mit && kombiniert – der Benutzername muss jede einzelne Prüfung bestehen, um als gültig zu gelten. "coffeeMaster" ist nicht leer, hat mehr als 5 Zeichen und enthält keine Leerzeichen, daher ist validUsername true.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 6
some-alt