Maison >Java >javaDidacticiel >Que signifie StringIndexOutOfBoundsException en Java ?

Que signifie StringIndexOutOfBoundsException en Java ?

WBOY
WBOYavant
2023-09-05 13:29:06936parcourir

En Java, les chaînes sont utilisées pour stocker des séquences de caractères et elles sont traitées comme des objets. La classe String du package java.lang représente une chaîne.

Vous pouvez créer une chaîne en utilisant le mot-clé new (comme tout autre objet) ou en attribuant une valeur à un littéral (comme tout autre type de données primitif).

String stringObject = new String("Hello how are you");
String stringLiteral = "Welcome to Tutorialspoint";

Puisqu'une chaîne stocke un tableau de caractères, tout comme un tableau, la position de chaque caractère est représentée par un index (à partir de 0). Par exemple, si nous créons une chaîne comme −

String str = "Hello";

dans laquelle le caractère est positionné comme −

Que signifie StringIndexOutOfBoundsException en Java ?

Si vous essayez d'accéder à un caractère de la chaîne dont l'index est supérieur à sa longueur, une exception StringIndexOutOfBoundsException sera être jeté.

Exemple

La classe String en Java fournit diverses méthodes pour manipuler les chaînes. Vous pouvez trouver le caractère à un index spécifique en utilisant la méthode charAt() de cette classe.

Cette méthode accepte une valeur entière spécifiant l'index de la chaîne et renvoie le caractère à l'index spécifié.

Dans le programme Java suivant, nous avons créé une chaîne de longueur 17 et essayé d'imprimer l'élément d'index 40.

Démo

public class Test {
   public static void main(String[] args) {
      String str = "Hello how are you";
      System.out.println("Length of the String: "+str.length());
      for(int i=0; i<str.length(); i++) {
         System.out.println(str.charAt(i));
      }
      //Accessing element at greater than the length of the String
      System.out.println(str.charAt(40));
   }
}

Sortie

Exception d'exécution -

Puisque nous accédons à un élément à un index supérieur à sa longueur, une StringIndexOutOfBoundsException est levée.

Length of the String: 17
H
e
l
l
o
h
o
w
a
r
e
y
o
u
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 40
   at java.base/java.lang.StringLatin1.charAt(Unknown Source)
   at java.base/java.lang.String.charAt(Unknown Source)
   at Test.main(Test.java:9)

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer