Maison> Java> javaDidacticiel> le corps du texte

StringIndexOutOfBoundsException en Java - solution pour chaîne hors limites

PHPz
Libérer: 2023-06-25 17:25:53
original
3235 Les gens l'ont consulté

En Java, StringIndexOutOfBoundsException (chaîne hors limites) est une erreur courante. Cette erreur se produit généralement lors du traitement de chaînes, et pour les programmes qui traitent de grandes quantités de texte, cette situation est susceptible d'être impliquée. Cet article présentera la situation et la solution de StringIndexOutOfBoundsException en Java.

Qu'est-ce que StringIndexOutOfBoundsException ?

StringIndexOutOfBoundsException est également appelée String hors limites Lorsque nous utilisons des opérations sur les chaînes Java, cette exception d'exécution peut se produire si nous accédons au-delà de la plage de la chaîne. Ce type d'exception hérite de la classe RuntimeException.

Situations courantes

Lors de l'utilisation de la méthode string charAt()

Lorsque nous utilisons la méthode charAt() pour obtenir les caractères d'une chaîne, nous pouvons obtenir des caractères spécifiques en spécifiant son numéro. Si ce nombre dépasse la longueur de la chaîne, une StringIndexOutOfBoundsException se produit.

Par exemple :

String str = "Java is a good programming language."; char c = str.charAt(50);
Copier après la connexion

Si les caractères obtenus via la méthode charAt() dépassent la longueur de la chaîne, une exception hors limites sera levée.

Lors de l'utilisation de la méthode string substring()

la méthode substring() peut extraire la chaîne dans la chaîne et vous pouvez contrôler la longueur de la sous-chaîne en spécifiant les nombres de début et de fin. Si les positions de début et de fin ne sont pas comprises dans la plage de la chaîne, une exception sera levée.

Par exemple :

String str = "Java is a good programming language."; String subStr = str.substring(50, 60);
Copier après la connexion

Dans ce cas, si le nombre dépasse la longueur de la chaîne, une exception hors limites sera levée.

Lors de l'utilisation d'un tableau de chaînes

Lors de l'utilisation d'un tableau de chaînes, StringIndexOutOfBoundsException est également susceptible de se produire. Si nous recherchons un élément qui dépasse la longueur du tableau, une exception sera levée.

Par exemple :

String[] arr = new String[]{"Java", "Python", "C++", "Ruby"}; String str = arr[10];
Copier après la connexion

Dans le cas ci-dessus, si l'élément auquel nous faisons référence n'est pas dans la plage du tableau, une exception hors limites se produira.

Solution

Nous pouvons éviter StringIndexOutOfBoundsException de la manière suivante.

Lorsque vous utilisez la méthode charAt(), assurez-vous que le nombre spécifié se trouve dans la plage de chaînes.

String str = "Java is a good programming language."; if (str.length() > 50) { char c = str.charAt(50); }
Copier après la connexion

Lorsque vous utilisez la méthode substring(), assurez-vous que les positions de début et de fin sont dans la plage de la chaîne.

String str = "Java is a good programming language."; if (str.length() > 50 && str.length() > 60) { String subStr = str.substring(50, 60); }
Copier après la connexion

Lorsque vous utilisez un tableau de chaînes, vous devez maintenant vous assurer que l'élément interrogé existe dans le tableau.

String[] arr = new String[]{"Java", "Python", "C++", "Ruby"}; if (arr.length > 10) { String str = arr[10]; }
Copier après la connexion

Summary

StringIndexOutOfBoundsException est une exception courante lors du traitement des opérations sur les chaînes. Nous devons être prudents lorsque nous utilisons des méthodes de chaîne. Si une exception se produit, nous devons vérifier les paramètres transmis à la méthode string pour nous assurer qu’ils ne dépassent pas la longueur de la chaîne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!