Programmation Orientée Objet
Ch 2: Le language JAVA
Dr. Mouna Chebbah
Dr. Inès Thabet
Dr. Mouna Chebbah
L2 BC
Ecole Supérieur d’Économie Numérique
Semestre 1, 2020/2021
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
1/48
Objectif
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Introduire:
§ Environnement de développement Java
§ Les éléments de base en langage Java
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
2/48
Java
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Le langage Java est:
§ Langage de programmation OO
créé par Sun Microsystems
§ Modulaire: on peut écrire des
portions de code utilisables par
plusieurs applications
§ Reprend une syntaxe très proche de
celle du langage C
§ Portable: un même programme
compilé peut s’exécuter sur
différents environnements
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
3/48
Environnement Java
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Java est un langage interprété, ce qui signifie qu’un programme
compilé n’est pas directement exécutable par le système
d’exploitation mais il doit être interprété par un autre programme,
qu’on appelle interpréteur.
Figure: Interprétation du langage
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
4/48
Classes
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Dans un programme Java, tout doit toujours se trouver dans
une classe.
public class HelloWord {
public static void main(String[] args)
{
System.out.println(“Hello World! ”);
}
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
5/48
Classes
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Le nom de classe commence par une lettre puis combinaison
de lettres et de chiffres (1ère lettre Maj)
§ Il faut donner au fichier du code source le même nom que
celui de la classe publique, avec l’extension .java
§ Java est sensible à la casse
§ Le compilateur javac HelloWord.java nomme
automatiquement le fichier de pseudo-code HelloWord.class
(même répertoire)
§ Lancer le programme: java HelloWord
§ Chaque instruction se termine par un point virgule
§ Un bloc de code est délimité par des accolades { et }
§ Les commentaires: /. . ./ sur plusieurs lignes Ou // sur une
seule ligne
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
6/48
La méthode main
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ L’exécution d’une application Java démarre au niveau de la
méthode main
§ Une application Java peut contenir plusieurs classes, mais un
seul point d’entrée.
§ La méthode main retourne un void, elle peut accepter des
arguments:
public static void main (string [] args)
§ public indique que le main est accessible à partir d’autres
classes
§ static permet d’invoquer la méthode sans instancier l’objet de
la classe
§ void signifie une procédure qui n’a pas de type de retour
§ Le paramètre de la méthode main, string [] args, est un
tableau string qui représente les arguments de la ligne de
commande utilisés pour appeler le programme.
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
7/48
Exemple
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
public class MainTest {
public static void main(String[] args)
{
int i=1;
for (String s: args)
{
System.out.println(“args[“+i+”] : ”+s);
i++;
}
}}
Parametre string [] args: mécanisme pour que le systeme passe les
informations à votre application
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
8/48
Exemple
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
9/48
Les méthodes
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Une méthode regroupe un ensemble d’instructions, pouvant
prendre des paramètres et pouvant renvoyer une valeur.
Exemple
public classTestMethode{
public static void main(String[] args)
{
AffichageBienvenue();
}
public static void AffichageBienvenue(){
System.out.println(”Bonjourzn”);
System.out.println(”ztBienvenue dans le monde merveilleux de
Java”);
}
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
10/48
Les méthodes: Exécution
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
11/48
Paramètres d’une méthode
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
public classTestMethode{
public static void main(String[] args)
{
DireBonjour(“Mouna”,30);
DireBonjour(“Amine”,35);
}
public static void DireBonjour(String prenom,int age)
{
}
System.out.println(”Bonjour ” + prenom);
System.out.println(”Vous avez ” + age + ” ans”);
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
12/48
Paramètres d’une méthode: Exécution
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
13/48
Retour d’une méthode
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Une méthode peut aussi renvoyer une valeur
Exemple
public class FormeGeometrique{
public static void main(String[] args)
{
double valeur = LongueurHypotenuse(1, 3);
System.out.println(valeur);
valeur = LongueurHypotenuse(10, 10);
System.out.println(valeur);
}
public static double LongueurHypotenuse(double a, double b)
{
double sommeDesCarres = a a + b b; // Math.Pow(a, 2)
double resultat = Math.sqrt(sommeDesCarres);
return resultat;
} }
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
14/48
Retour d’une méthode: Exécution
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
15/48
Variables
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ En Java il faut déclarer un objet ou une variable avec son type
Publicité
avant de l’utiliser.
§ Une variable réserve une place en mémoire pour stocker des
informations à tout moment de l’exécution d’un programme et
de les réexploiter à n’importe quel autre moment.
§ Une variable possède:
§ un nom qui permet d’accéder aux données qu’elle contient
§ un type de données
§ Déclaration:
type nom [ = expression ];
ătypeąvariable1[=valeur1],variable2=[valeur2],. . .
§ Exemple:
int age =30;
String nom=”Ali”;
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
16/48
Constantes
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Les constantes: donner un nom à une valeur fixe (qui ne peut
pas changer)
§ Si la valeur de la constante change, il suffit de la changer dans
un seul endroit (lors de son affectation)
§ Déclaration:
§ final type nom = expression ;
§ Exemple: final float TVA = 20.5;
§ TVA = 23.5; “ą erreur
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
17/48
Types de données
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Type
byte
short
int
long
float
double
(virgule
compris
entre ´9223372036854775808
Valeurs
Entier entre ´128 et `127 (8 bits)
Entier signé court entre ´32768 et 32767 (16 bits)
Entier compris entre ´2147483648 et 2147483647 (32 bits)
et
Entier
9223372036854775807 (64 bits)
Réel
entre
´3, 402823x1038 et ´1, 401298x1045 (nombres négatifs)
et 1, 401298x1045 et 3, 402823x1038 (positifs)
et
Réel
entre
´4, 94065645841247x10324
et
4, 94065645841247x10324 et 1, 79769313486231x10308
(positifs) (32 bits)
1 caractère (16 bits)
Chaˆıne de caractères (texte mis entre guillemets)
´1, 79769313486231x10308
(négatifs)
précision)
flottante
simple
char
string
boolean Valeur booléenne:true, false (1 bits)
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
18/48
Types de données
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Il est possible d’indiquer au compilateur le type d’une valeur
numérique en utilisant un suffixe:
§ l ou L pour désigner un entier du type long
§ f ou F pour désigner un réel du type float
§ d ou D pour désigner un réel du type double
§ Exemples:
§ 45l ou 45L représente la valeur 45 en entier signé sur 64 bits.
§ 45f ou 45F représente la valeur 45 en virgule flottante simple
précision sur 32 bits.
§ 45d ou 45D représente la valeur 45 en virgule flottante double
précision sur 64 bits.
§ 5.27e-2f ou 5.27e-2F repr´sente la valeur 0.0527 en virgule
flottante simple précision sur 32 bits.
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
19/48
Opérateurs
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Opérateur Exemple Résultat
=
+
-
*
/
%
x=3
x+3
x-3
x*3
x/3
x%3
Affectation de la valeur 3 dans
la variable x
6
0
9
1
0
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
20/48
Opérateurs d’assignation
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Simplifie des opérations qui ajoute une valeur dans une variable et
stocke le résultat dans la même variable.
Opérateur Effet
Résultat
+=
-=
*=
/=
%=
addition de deux valeurs et
stocke le résultat dans la vari-
able (à gauche)
soustrait deux valeurs et stocke
le résultat dans la variable
multiplie deux valeurs et stocke
le résultat dans la variable
divise deux valeurs et stocke le
quotient dans la variable
divise deux valeurs et stocke le
reste dans la variable
x+=2 equivalente
à x=x+2
x-=5 equivalente à
x=x-5
x*=5 equivalente
à x=x*5
x/=5 equivalente
à x=x/5
x%=5 equivalente
à x=x%5
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
21/48
Opérateurs d’incrémentation
Opérateur Dénomination
Incrémentation
Décrémentation
++
–
Exemple
int x=7;
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Effet
Augmente
unité la variable
Diminue
unité la variable
d’une
d’une
Syntaxe
x++ ou ++x
x– ou –x
§ Post-incrémentation: int y=x++; // y est initialisé à 7, puis x
est incrémenté à 8
§ Pré-incrémentation: int y=++x; // x est incrémenté à 8,
puis y est initialisé à 8
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
22/48
Opérateurs: Exemple
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
int age = 20;
age = age + 10; // age contient 30
age++; // age contient 31 (incrémentation de 1)
age += 10; // équivalent à age = age + 10 (age contient 40)
age /= 2; // équivalent à age = age / 2 “ą (age contient 20)
int moyenne = 5 / 2;
System.out.println(moyenne); // affiche 2 “ą Division entière
double moyenne = 5.0 / 2.0;
System.out.println(moyenne); // affiche 2.5
int k = 5 , n ;
n = k++ ; // n=5, k=6
int k = 5 , n ;
n = ++k ; //n = 6, k = 6
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
23/48
Opérateur de Concaténation
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Concaténation chaˆınes de caractères: +
Exemple
String codePostal = “2037”;
String ville = “Ariana”;
String adresse = codePostal + “ ” + ville;
System.out.println(adresse); // affiche : 2037 Ariana
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
24/48
Opérateurs conditionnels
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Opérateur Descritpion
==
!=
ą
ă
ą“
ă“
&&
||
Publicité
!
Egalité
Différence
Supérieur à
Inférieur à
Supérieur ou égal
Inférieur ou égal
ET logique
OU logique
Négation
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
25/48
Convertion de types
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Convertion entre types compatibles: le Casting précède la variable
a convertir du nom du type souhaité entre parentheses.
Exemple
int i = 200;
short s = (short)i;
int i = 20;
double d = i; //ok d=20.0
double prix = 125.55;
int valeur = (int) prix; // valeur vaut 125
int x = (int) 5.27e-2; // x vaut 0
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
26/48
Convertion de types
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Compatibilité ascendante des types de variables en Java (implicite
sans transtypage obligatoire).
Une conversion automatique est réalisée si:
§ Les données sont compatibles entre elles
§ La destination est plus grande que le type source
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
27/48
Convertion de types
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Convertion entre types incompatibles: utiliser les méthodes
appropriées.
Exemple 1
String chaineAge = “20”;
int age =Integer.valueOf(chaineAge); // age vaut 20
Exemple 2
String chaineAge = “20”;
double age = Double.valueOf(chaineAge); // age vaut 20.0
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
28/48
Bloc de code et porté d’une variable
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Les blocs de code permettent de grouper plusieurs instructions
qui vont s’exécuter dans le même contexte
§ La “portée d’une variable” est la zone de code dans laquelle
une variable est utilisable. Elle correspond en général au bloc
de code dans lequel est définie la variable
§ Un bloc de code permet de regrouper des instructions qui
commencent par { et qui finissent par }
§ Une variable définie à l’intérieur d’un bloc de code aura pour
portée ce bloc de code
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
29/48
Les sorties
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
La classe System fournit une application Java avec acces a l’entrée
standard (System.in), à la sortie standard (System.out).
Sortie: les méthodes System.out.print et System.out.println
affichent des informations sur l’écran de la console.
Exemple
public class Afficher{
public static void main(String[] args)
{
double x = 10;
System.out.println(x); //Affiche 10
double y = 20;
System.out.println(y); //Affiche 20
System.out.println(“La somme est: “+(x+y)); //Affiche 30
}
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
30/48
Les entrées
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Entrée: objet Scanner qui se trouve dans le package
java.util.Scanner. Il faut import java.util.Scanner;
Exemple: Saisie d’une chaine
Scanner sc = new Scanner(System.in);
String str = sc.nextLine(); // récupérer la saisie
System.out.println(“Vous avez saisi:” + str);
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
31/48
Les entrées
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
nextăType de variable commençant par une majusculeą
Exemple: Saisie d’un entier
Scanner sc = new Scanner(System.in);
System.out.println(“Veuillez saisir un nombre :”);
int str = sc.nextInt();
System.out.println(“Vous avez saisi le nombre :” + str);
Exemple: Saisie d’un nombre
Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();
long l = sc.nextLong();
byte b = sc.nextByte();
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
32/48
Les entrées/sorties
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Remarque: la méthode nextLine() récupère le contenu de la ligne
saisie et replace la “tête de lecture” au début d’une autre.
Par contre, nextInt(), nextDouble() sont appelées et directement
apres la méthode nextLine(), celle-ci ne vous invitera pas a saisir
une chaˆıne de caractères: elle videra la ligne commencée par les
autres instructions.
Exemple:
Scanner sc = new Scanner(System.in);
System.out.println(”Saisissez un entier : ”);
int i = sc.nextInt();
System.out.println(“Saisissez une chaˆıne : ”);
String str = sc.nextLine();
System.out.println(“FIN ! ”);
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
33/48
Les entrées/sorties
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Scanner sc = new Scanner(System.in);
System.out.println(“Saisissez un entier : ”);
int i = sc.nextInt();
System.out.println(“Saisissez une chaˆıne : ”); //On vide la ligne
avant d’en lire une autre
sc.nextLine();
String str = sc.nextLine();
System.out.println(“FIN ! ”);
} }
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
34/48
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Condition simple
If (condition1)
instruction 1
rElse
instruction 2 s
Exemple
If (compteEnBanque ą“ 0)
System.out.println(“Votre compte est créditeur”);
else
System.out.println(“Votre compte est débiteur”);
Ou bien
boolean estCrediteur = (compteEnBanque ą“ 0);
if (estCrediteur)
System.out.println(“Votre compte est créditeur”);
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
35/48
Affectation conditionnelle
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Variable = condition ? valeur if true : valeur if false
Cette construction évalue la condition et retourne la première
valeur si la condition est vraie, sinon la seconde “ą Utile pour
diminuer le nombre de lignes de code.
Exemple
If (aăb)
min “ a;
else min “ b;
Affectation conditionnelle:
min “ a ă b ? a : b ;
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
36/48
Conditions multiples
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
If condition1
instruction 1
Else If condition2
instruction 2
Else If condition3
instruction 3
. . .
r Else
instructionElse s
Exemple
if (civilite==’ Mme’ );
System.out.println(“Vous
femme” );
else if (civilite == “Mlle” );
System.out.println(“ Vous
femme non mariée” );
else if (civilite == ‘M.’ );
System.out.println(“Vous
homme” );
else
System.out.println(“Je
déterminer votre civilité” );
n’ai
êtes
une
Publicité
êtes
une
êtes
un
pas
pu
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
37/48
Switch
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Permet de tester la valeur d’une variable avec plusieurs
conditions possibles
§ Exécute une action parmi plusieurs, selon la valeur retournée.
§ Permet de simplifier l’écriture des Else If à l’aide des
instructions
Switch Expression {
Case valeur 1:
instructions 1
break;
Case valeur 2:
instructions 2
break;
. . .
rDefault:
instructions s
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
38/48
Exemple
String civilite = ”M.”;
Switch (civilite)
{
Case “M.” :
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
System.out.println(“Bonjour monsieur” );
break;
Case “Mme” :
System.out.println(“Bonjour madame” );
break;
Case “Mlle” :
System.out.println(“Bonjour mademoiselle” );
break;
Default:
System.out.println(“Je n’ai pas pu déterminer votre civilité” );
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
39/48
La boucle for
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Exécute une série d’instructions en boucle autant de fois que
spécifié
for (int compteur = 0; compteur ă 50; compteur++)
{
System.out.print (”Bonjour Java” + compteur); //affiche le
message 50 fois + le compteur
}
Stringrs jours = new Stringrs{ ”Lundi”, ”Mardi”, ”Mercredi”,
”Jeudi”, ”Vendredi”, ”Samedi”, ”Dimanche” };
for (int indice = 0; indice ă 7; indice++) // jours.length
{
System.out.println(jours[indice]);
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
40/48
La boucle for
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Parcourir le tableau de 2 en 2 en commençant par la fin
intrs chiffres = new intrs{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
for (int i = 9; i ą 0; i ´ “ 2)
{
System.out.println(chiffresris);
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
41/48
La boucle for each
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Stringrs jours = new String[] { “Lundi”, “Mardi”, “Mercredi”,
“Jeudi”, “Vendredi”, “Samedi”, “Dimanche”};
for(String jour : jours)
{
if(jour==“Samedi” || jour==“Dimanche”)
jour=“Weekend”;
System.out.println(jour);
System.out.println(jour);
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
42/48
La boucle while
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Exécute une série d’instructions en boucle tant que la condition est
vraie (True)
int i = 0;
while (i ă 50)
{
System.out.println(“Bonjour Java#” );
i++;
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
43/48
La boucle do while
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
Exécute les instructions à l’intérieur de la boucle une fois, puis
répète tant que la condition est vraie.
do {
System.out.println(“Bonjour Java” );
i++;
while (iă 50);
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
44/48
Tableaux
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Un tableau Java est un objet permettant de rassembler sous
un même identificateur des données de même type.
ăidentificateur typeą rs ănom tableauą“new
ăidentificateur typeą rns
intrs entiers=new intrs {0,10,20,30};
intrs entiers=new int[4];
Stringrs jours = new Stringrs { ”Lundi”, ”Mardi”,
”Mercredi”,”Jeudi”, ”Vendredi”, ”Samedi”, ”Dimanche” };
System.out.println(joursr3s);
System.out.println(joursr0s); // affiche Lundi
System.out.println(joursr10s); // provoque une erreur d’exécution
for (int i = 0; iă jours.length; i++) {
System.out.println(joursris); }
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
45/48
Tableaux à deux dimensions
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ La déclaration se fait sur le même principe qu’un tableau à
une dimension.
§ Deux dimensions :[,]
§ Trois dimensions: [,,], . . .
§ L’initialisation: les valeurs ne sont pas renseignés les unes à la
suite des autres, mais en les regroupant par ligne (imbrication
d’accolades).
int Nombresrsrs ={{0,2,4,6,8},{1,3,5,7,9}}
int premiersNombresrsrs = {{0,2,4,6,8},{1,3,5,7,9}};
for(int i = 0; iă 2; i++) {
for(int j = 0; j ă 5; j++) {
System.out.print(premiersNombresrisrjs);
}
System.out.println(“’ );
}
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
46/48
Les énumérations
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
§ Utiliser le mot clé enum et spécifier les différentes du type
énuméré (énumération de valeurs)
§ Une énumération est un type dont toutes les valeurs définies
sont des entiers. La première vaut 0, et chaque valeur
suivante prend la valeur précédente augmentée de 1
Exemple
enum Jours {
Lundi,
Mardi,
Mercredi,
Jeudi ,
Vendredi,
Samedi,
Dimanche }
Jours jourDeLaSemaine = Jours.Jeudi;
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
47/48
Exemple
class Program {
enum Jours {
Lundi,
Mardi,
Mercredi,
Jeudi,
Vendredi,
Samedi,
Dimanche
}
Structure d’un programme
Variables et constantes
Entrées/Sorties
Instructions de contrôle et boucles
Tableaux et Enumération
public static void main(stringrs args) {
Jours jourDeLaSemaine = Jours.Mardi;
System.out.print (jourDeLaSemaine); //
affiche lundi
if
Jours.Dimanche
== Jours.Samedi)
{
System.out.print (“Bon week-end”);
}
(jourDeLaSemaine
||
==
jourDeLaSemaine
Chapitre 1 - Introduction, M. Chebbah
Semestre 1, 2020
48/48