IN101

Cours 6

I. Types primitifs
I.1 long (Long) fait partie des types entiers (comme int) qui avec les types réels font partie des types numériques
I.2 char (Character)
II. Conversions (entre types primitifs)
II.1 Syntaxe : (type souhaité)expression_compatible
II.2 sans perte : int -> long, int -> double, char -> int, char -> long, char -> double
II.3 avec perte : long -> int, double -> int, double -> long, long -> double, int -> char, long -> char, double -> char
II.4 impossible : boolean <-> ?
III. Tableaux
III.1 Utilité
III.2 Définition
III.3 Nouveau type
III.4 Déclaration
III.5 Création/allocation
III.6 Accès à une valeur (et attribut length)
III.7 Initialisation
III.8 Saisie/affichage : rien de prévu
III.9 = ,   = = ,   final
III.10 java.util.Arrays (equals, toString, fill, sort, binarySearch)
III.11 Caractères
III.12 Multi-dimensionnels
III.12.a Un élément de tableau peut être de n'importe quel type, donc aussi un tableau ! Un tableau de tableau donne un tableau bi-dimensionnel.
III.12.b Integer[][] bidim = new Integer[3][2]; ==> nouveau type ( Integer[][] ) et 2 indices.
bidim[ligne][colonne] pour accéder à une case.
Integer[][] peut être vu comme un tableau de Integer[] (puisque X[] est un tableau de X)
Attention ! new Integer[3][2] ne signifie pas un tableau de 2 Integer[3] mais un tableau de 3 Integer[2] !
III.12.c initialisation possible : Integer[][] bidim = { {11, 12}, {21, 22}, {31, 32} };
III.12.d Un tableau peut avoir plus de 2 dimensions, et même plus de 5 ! Exemple :
     Pixel[][][][][][][] journee = new Pixel[20][10][30][25][3][1024][768];
                                              ^   ^   ^   ^  ^     ^    ^
                             plages par journée   ^   ^   ^  ^     ^    ^
                                    spots par plage   ^   ^  ^     ^    ^
                                      secondes par spot   ^  ^     ^    ^
                                         images par seconde  ^     ^    ^
                                      plans couleurs par image     ^    ^
                                                     lignes par plan    ^
                                                       colonnes par ligne
et pourquoi pas par an, par chaîne, etc ...
III.12.e Arrays.deepToString( tab ) et Arrays.deepEquals( tab1, tab2 )
IV. Boucle while
while ( expression booléenne ) { instructions } V. Boucle for
V.1 équivalent à : initialisation; while ( condition de continuation ) { instructions; progression; }
initialisation: type_entier variable = expression_entière; par exemple: int i=0
condition de continuation: comparaison sur la variable par exemple: i <= 15
progression: modification de la variable par exemple: i = i + 1
V.2 syntaxe : for ( initialisation; condition de continuation; progression ) { instructions }
par exemple: for ( int i=0; i<=15; i=i+1 ) { instructions }
V.3 opérateurs ++ et --
i++ est équivalent à i=i+1 et non à i+1
i-- est équivalent à i=i-1 et non à i-1
- - - - - - - - - - - - - - - - - - - non traité en cours :
VI. Boucle do while
VII. Choix entre 3 boucles


--> Dernière mise à jour :