Ecrivez votre premier programme avec Java Tableau François Barthélemy CNAM, Département Informatique, Équipe AISL 1 / 14 Tableau F. Barthélemy (CNAM) Tableau 0 1 2 3 4 17 9 10 12 13 un tableau est une structure contenant plusieurs données de même type stocké dans la mémoire de l’ordinateur les cases d’un tableau sont numérotées la numérotation commence à 0 il y a des opérations sur le tableau entier il y a des opérations sur une donnée du tableau exemple 2 / 14 Tableau F. Barthélemy (CNAM) Etapes de la vie d’un tableau étape 1 : déclarer une variable qui donne un nom au tableau int[] tab ; c’est une déclaration de variable normale : int[] est le type des tableaux contenant des nombres entiers. étape 2 : créer le tableau dans la mémoire tab = new int[5] ; 5 est le nombre de cases à la création, toutes les cases contiennent 0 étape 3 : utiliser le tableau 3 / 14 Tableau F. Barthélemy (CNAM) Utiliser un tableau Exemple : int[] tab; tab = new int[5]; chaque case du tableau est comme une variable le nom d’une case : nom du tableau+numéro entre crochet tab[1] : nom de la case numéro 1 la case numéro 1 est la 2ème case du tableau le nom d’une case peut apparaître à gauche d’une affectation tab[1]=14 ; le nom de la case peut apparaître dans un calcul : System.out.println(tab[1]) ; 4 / 14 Tableau F. Barthélemy (CNAM) Exemple int[] tab; tab = new int[3]; tab[1] = 5; tab[2] = MOOC.readInt(); Mémoire tab : 0 1 2 0 5 3 Clavier 3 5 / 14 Tableau F. Barthélemy (CNAM) Calcul du numéro de case le numéro de la case peut être le résultat d’un calcul. 6 / 14 Tableau F. Barthélemy (CNAM) Exemple de calcul de numéro de case int[] tab; tab = new int[3]; int num; tab[1] = 5; tab[2] = MOOC.readInt(); System.out.println("Quelle case?"); num = MOOC.readInt(); System.out.println(tab[num]); 7 / 14 Tableau F. Barthélemy (CNAM) Tableaux et for on utilise souvent for pour manipuler les tableaux le numéro du tour de boucle = le numéro de la case du tableau il faut commencer à numéroter à partir de 0 le dernier tour doit avoir le numéro de la dernière case ce numéro est égal à la taille du tableau moins un 0 1 2 3 4 17 9 10 12 13 8 / 14 5 cases Tableau F. Barthélemy (CNAM) Exemple Remplir un tableau avec des nombres entrés au clavier. int[] tab = new int[5]; for (int num=0; num<5; num=num+1){ System.out.println("Entrez un nombre"); tab[num] = MOOC.readInt(); } 9 / 14 Tableau F. Barthélemy (CNAM) Tableaux pour tous les types pour chaque type java, on peut faire un tableau boolean[], char[], double[], String[] c’est le type du contenu des cases les numéros de case restent des entiers (int) à la création du tableau, une valeur du type dans chaque case : I I I I 0 pour int 0.0 pour double false pour boolean des choses bizarres pour char et String 10 / 14 Tableau F. Barthélemy (CNAM) Opérations sur une case, opérations du type du contenu par exemple, case de int[] : opérations du type int I I I opérations arithmétiques tab[1]*2 comparaisons, ordre tab[1] > 0 paramètre de méthode Mooc.auSort(1,tab[1]) ; sur le tableau complet, il n’existe pas d’opérations 11 / 14 Tableau F. Barthélemy (CNAM) Manipulation des tableaux on peut faire une affectation d’un tableau entier exemple : int[] tab1=new int[3]; int[] tab2; tab1[0]=10; tab2 = tab1; System.out.println(tab2[0]); 12 / 14 Tableau F. Barthélemy (CNAM) Taille d’un tableau taille d’un tableau : nombre de cases la taille est fixée à la création du tableau (new) elle ne peut pas être changée la taille n’est pas fixée lors de la déclaration de variable on peut mettre des tableaux de taille différentes dans une variable à différents moments. 13 / 14 Tableau F. Barthélemy (CNAM) Exemple int[] tab; tab = new int[5]; tab[0] = 10; tab = new int[10]; System.out.println(tab[0]); 14 / 14 Tableau F. Barthélemy (CNAM) The end 14 / 14 Tableau F. Barthélemy (CNAM)