


String-Konvertierungsausnahme in Java – java.lang.StringIndexOutOfBoundsException
String-Konvertierungsausnahme in Java – java.lang.StringIndexOutOfBoundsException
Java ist eine beliebte Programmiersprache, in der die String-Verarbeitung ein sehr wichtiger Teil ist. Für die Konvertierung und den Betrieb von Strings stellt Java eine Fülle von APIs und Tools bereit, die es Entwicklern ermöglichen, Strings einfach zu verarbeiten. Bei der Verarbeitung von Zeichenfolgen tritt jedoch manchmal eine java.lang.StringIndexOutOfBoundsException-Ausnahme auf. In diesem Artikel werden die Ursachen und Lösungen für diese Ausnahme untersucht.
Was ist zunächst einmal java.lang.StringIndexOutOfBoundsException? Einfach ausgedrückt wird diese Ausnahme ausgelöst, wenn versucht wird, auf ein Zeichen zuzugreifen, das nicht in der Zeichenfolge vorhanden ist, oder wenn beim Zugriff auf die Zeichenfolge ein Parameter den Gültigkeitsbereich der Zeichenfolge überschreitet. Hier ist ein Beispiel:
String str = "Hello World!"; char ch = str.charAt(20);
Der obige Code versucht, auf das Zeichen an Position 20 in der Zeichenfolge zuzugreifen, aber die Länge der Zeichenfolge beträgt nur 12, sodass eine StringIndexOutOfBoundsException-Ausnahme ausgelöst wird. Diese Ausnahme wird normalerweise durch Entwicklercodefehler oder Eingabedatenfehler verursacht. In den folgenden Abschnitten werden wir die Ursachen und Lösungen für mehrere häufige Situationen untersuchen.
- String-Länge beim Aufruf der charAt()-Methode überschritten
Oben wurde ein Beispiel erwähnt, das eine der häufigsten Situationen darstellt. Die Methode charAt() löst diese Ausnahme aus, wenn wir versuchen, auf ein nicht vorhandenes Zeichen in der Zeichenfolge zuzugreifen. Bevor wir dieses Problem lösen, müssen wir sicherstellen, dass der Indexparameter die Zeichenfolgenlänge nicht überschreitet. Sie können Folgendes überprüfen:
if (index >= 0 && index < str.length()) { char ch = str.charAt(index); }
Hier wird eine if-Anweisung verwendet, um sicherzustellen, dass der Index innerhalb des Zeichenfolgenbereichs liegt. Wenn der Index nicht im Bereich liegt, wird die Methode charAt() nicht ausgeführt. Dieser Ansatz kann das Auslösen von Ausnahmen vermeiden und die Robustheit des Codes verbessern.
- Der String-Längenbereich wird beim Aufruf der substring()-Methode überschritten
In Java wird die substring()-Methode verwendet, um den String innerhalb des angegebenen Bereichs abzufangen. Zum Beispiel:
String str = "Hello World!"; String substr = str.substring(3, 7);
Der obige Code fängt den Teilstring von Position 3 bis Position 7 des Strings ab und weist ihn der Substr-Variablen zu. Wenn der angegebene Bereich jedoch die Länge der Zeichenfolge überschreitet, wird eine StringIndexOutOfBoundsException ausgelöst. Ebenso müssen Sie bei Verwendung der substring()-Methode sicherstellen, dass die angegebene Startposition und Endposition innerhalb des String-Bereichs liegen:
if (start >= 0 && end <= str.length()) { String substr = str.substring(start, end); }
Hier wird eine if-Anweisung verwendet, um sicherzustellen, dass die Startposition und Endposition innerhalb des Strings liegen Reichweite. Wenn es außerhalb des Bereichs liegt, wird die Methode substring() nicht ausgeführt. Dieser Ansatz kann auch das Auslösen von Ausnahmen vermeiden und die Robustheit des Codes verbessern.
- Die Zeichenfolge ist leer
Es gibt eine andere Möglichkeit, dass die Zeichenfolge leer ist. Beim Versuch, auf Zeichen in einer leeren Zeichenfolge zuzugreifen oder eine Teilzeichenfolge abzufangen, wird außerdem eine StringIndexOutOfBoundsException-Ausnahme ausgelöst. Wenn Sie eine leere Zeichenfolge verarbeiten, müssen Sie zunächst prüfen, ob die Zeichenfolge leer ist:
if (str != null && !str.isEmpty()) { //处理非空字符串 }
Die if-Anweisung wird hier verwendet, um sicherzustellen, dass die Zeichenfolge nicht leer ist. Wenn die Zeichenfolge leer ist, wird die entsprechende Operation nicht ausgeführt. Auch dieser Ansatz kann das Auslösen von Ausnahmen vermeiden und die Robustheit des Codes verbessern.
Zusammenfassung
In Java ist die Ausnahme java.lang.StringIndexOutOfBoundsException eine der sehr häufigsten Ausnahmen. Achten Sie bei der Verarbeitung von Zeichenfolgen unbedingt auf die Länge und den Bereich der Zeichenfolge, um Fehler beim Überschreiten des Bereichs zu vermeiden. Im Code können wir if-Anweisungen verwenden, um sicherzustellen, dass der Index und der Bereich innerhalb des zulässigen Bereichs liegen. Dieser Ansatz kann die Robustheit und Zuverlässigkeit des Codes verbessern und uns ein besseres Entwicklungserlebnis bescheren.
Das obige ist der detaillierte Inhalt vonString-Konvertierungsausnahme in Java – java.lang.StringIndexOutOfBoundsException. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die Verarbeitung von Feldzuordnungen im Systemdocken stößt häufig auf ein schwieriges Problem bei der Durchführung von Systemdocken: So kartieren Sie die Schnittstellenfelder des Systems und ...

Bei Verwendung von MyBatis-Plus oder anderen ORM-Frameworks für Datenbankvorgänge müssen häufig Abfragebedingungen basierend auf dem Attributnamen der Entitätsklasse erstellt werden. Wenn Sie jedes Mal manuell ...

Beginnen Sie den Frühling mit der Intellijideaultimate -Version ...

Fehlerbehebung und Lösungen für die Sicherheitssoftware des Unternehmens, die dazu führt, dass einige Anwendungen nicht ordnungsgemäß funktionieren. Viele Unternehmen werden Sicherheitssoftware bereitstellen, um die interne Netzwerksicherheit zu gewährleisten. ...

Konvertierung von Java-Objekten und -Arrays: Eingehende Diskussion der Risiken und korrekten Methoden zur Konvertierung des Guss-Typs Viele Java-Anfänger werden auf die Umwandlung eines Objekts in ein Array stoßen ...

Analyse des Gedächtnis -Leck -Phänomens von Java -Programmen zu verschiedenen Architektur -CPUs. In diesem Artikel wird ein Fall erläutert, in dem ein Java -Programm unterschiedliche Gedächtnisverhalten auf ARM- und X86 -Architektur -CPUs aufweist ...

Wie erkennt die Redis -Caching -Lösung die Anforderungen der Produktranking -Liste? Während des Entwicklungsprozesses müssen wir uns häufig mit den Anforderungen der Ranglisten befassen, z. B. das Anzeigen eines ...

Java...
