Maison >Java >javaDidacticiel >Programme Java pour vérifier les limites du tableau lors de la saisie des éléments du tableau
Un tableau est une structure de données linéaire utilisée pour stocker des groupes d'éléments avec des types de données similaires. Il stocke les données de manière séquentielle. Une fois que nous avons créé un tableau, nous ne pouvons pas modifier sa taille, c'est-à-dire qu'il est de longueur fixe.
Cet article vous aidera à comprendre les concepts de base des tableaux et de la liaison de tableaux. Nous discuterons également du programme Java permettant de vérifier les limites d'un tableau lors de la saisie d'éléments dans le tableau.
Nous pouvons accéder aux éléments du tableau par index. Supposons que nous ayons un tableau de longueur N, alors
Dans l'image ci-dessus, nous pouvons voir qu'il y a 7 éléments dans le tableau, mais les valeurs d'index sont de 0 à 6, c'est-à-dire de 0 à 7 - 1.
La plage d'un tableau est appelée ses limites. La plage du tableau ci-dessus va de 0 à 6, nous pouvons donc également dire que 0 à 6 sont les limites du tableau donné. Si nous essayons d'accéder à une valeur d'index hors plage ou à un index négatif, nous obtiendrons une ArrayIndexOutOfBoundsException. Il s'agit d'une erreur qui se produit lors de l'exécution.
Data_Type[] nameOfarray; // declaration Or, Data_Type nameOfarray[]; // declaration Or, // declaration with size Data_Type nameOfarray[] = new Data_Type[sizeofarray]; // declaration and initialization Data_Type nameOfarray[] = {values separated with comma};
Nous pouvons utiliser n’importe laquelle des syntaxes ci-dessus dans nos programmes.
Vérifiez les limites du tableau lors de la saisie d'éléments dans le tableau
Si nous accédons aux éléments situés dans la plage du tableau, nous n'obtiendrons aucune erreur. Le programme s'exécutera avec succès.
public class Main { public static void main(String []args) { // declaration and initialization of array ‘item[]’ with size 5 String[] item = new String[5]; // 0 to 4 is the indices item[0] = "Rice"; item[1] = "Milk"; item[2] = "Bread"; item[3] = "Butter"; item[4] = "Peanut"; System.out.print(" Elements of the array item: " ); // loop will iterate till 4 and will print the elements of ‘item[]’ for(int i = 0; i <= 4; i++) { System.out.print(item[i] + " "); } } }
Elements of the array item: Rice Milk Bread Butter Peanut
Essayons d'imprimer des valeurs en dehors de la plage du tableau donné.
public class Tutorialspoint { public static void main(String []args) { String[] item = new String[5]; item[0] = "Rice"; item[1] = "Milk"; item[2] = "Bread"; item[3] = "Butter"; item[4] = "Peanut"; // trying to run the for loop till index 5 for(int i = 0; i <= 5; i++) { System.out.println(item[i]); } } }
Rice Milk Bread Butter Peanut Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5 at Tutorialspoint.main(Tutorialspoint.java:11)
Comme nous en avons discuté plus tôt, si nous essayons d'accéder à un tableau avec une valeur d'index en dehors de sa plage ou un index négatif, nous obtiendrons ArrayIndexOutOfBoundsException.
Dans le programme ci-dessus, nous avons essayé d'exécuter une boucle for jusqu'à l'index 5 du tableau "item[]", mais sa plage n'est que de 0 à 4. Donc, après avoir imprimé les éléments jusqu'à 4, nous obtenons l'erreur.
Dans cet exemple, nous essayons de gérer ArrayIndexOutOfBoundsException en utilisant des blocs try and catch. Nous vérifierons les limites du tableau lorsque l'utilisateur entrera des éléments dans le tableau.
import java.util.*; public class Tutorialspoint { public static void main(String []args) throws ArrayIndexOutOfBoundsException { // Here ‘sc’ is the object of scanner class Scanner sc = new Scanner(System.in); System.out.print("Enter number of items: "); int n = sc.nextInt(); // declaration and initialization of array ‘item[]’ String[] item = new String[n]; // try block to test the error try { // to take input from user for(int i =0; i<= item.length; i++) { item[i] = sc.nextLine(); } } // We will handle the exception in catch block catch (ArrayIndexOutOfBoundsException exp) { // Printing this message to let user know that array bound exceeded System.out.println( " Array Bounds Exceeded \n Can't take more inputs "); } } }
Enter number of items: 3
Dans cet article, nous avons découvert les tableaux et la liaison de tableaux. Nous avons expliqué pourquoi nous recevons une erreur si nous essayons d'accéder à un élément du tableau au-delà de sa portée et comment gérer cette erreur à l'aide de blocs try and catch.
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!