TD 2 Les Collections Java

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 3

Programmation Orientée Objet Avancée

TD – Les collections

Exercice 1 :
1. Définir une classe Etudiant caractérisé par id(entier), nom (chaine de caractères) et
prénom (chaine de caractères).
Elle possède les méthodes :
- Constructeur par défaut et paramétré
- Les getters et les setters
- La redéfinition de la méthode equals(), permettant de tester l’égalité entre 2
étudiants en utilisant l’id.
- La redéfinition de la méthode toString(), permettant de donner une représentation
de l’étudiant sous forme de chaine de caractères
2. Créer l’interface Université contenant les méthodes suivantes :

public void ajouterEtudiant(Etudiant e);


public boolean rechercherEtudiant(Etudiant e);
public boolean rechercherEtudiant(Stringnom);
public void supprimerEtudiant(Etudiant e);
public void afficherEtudiants();
public void trierEtudiantsParId();
public void trierEtudiantsParNom();

3. Créer les classes L2Vector et L2ArrayList qui implémentent l’interface Université et


qui reposent sur l’utilisation respective d’un Vector et d’un ArrayList pour la gestion
de la liste des étudiants.
4. Ajouter la redéfinition de la méthode hashCode(), permettent de retourner le
hashCode d’un objet.
5. Créer les classes L2HashSet et ESBTreeSet qui implémentent l’interface Université et
qui reposent sur l’utilisation respective d’un HashSet et d’un TreeSet pour la gestion
de la liste des étudiants.

6. Ecrire un programme main qui permet de créer une liste/ (ensuite un ensemble)
d’étudiants et de tester les méthodes implémentées.

Exercice 2 :
Nous voulons créer un répertoire téléphonique en Java avec les informations suivantes :
Nom numéro
Ali 99 966 456
Salah 20 998 567
…..

Ines THABET Page 1


Programmation Orientée Objet Avancée

Ecrire une classe annuaire qui permet d’enregistrer les noms de personnes avec leurs numéros
de téléphone. La classe dispose ainsi d’un attribut TreeMap <String, String> qui permet
d’enregistrer le nom d’une personne et son numéro. Elle dispose aussi :
- Méthode getNuméro(String nom) qui permet de retourner le numéro de téléphone.
- Méthode ajouterNuméro(String nom, String num) qui permet d’attribuer un numéro à
une personne. Votre méthode doit traiter les exceptions.
- Méthode affiche() qui permet d’afficher le contenu de votre annuaire sous le format :
nom personne : numéro.

Exercice 3 :

Nous désirons réaliser une application de gestion de comptes bancaires. Ainsi nous disposons
des deux classes suivantes : Compte et Banque qui vont permettre la création et la simulation
du fonctionnement d’une banque : création de compte, ajout de solde comptes et mouvements
sur les comptes, etc.
La classe Compte dispose d’un attribut numéro, d’un solde, d’une méthode de dépôt qui permet
d’ajouter du solde au compte, d’une méthode de retrait qui permet de retirer du solde du
compte.
La classe banque est décrite par ses attributs privés : nom et par une Map qui associe à chaque
numéro de compte un objet de type Compte (numero→compte). Il est à noter que les numéros
de comptes sont incrémentés automatiquement.
La classe banque est décrite par les méthodes suivantes :
/* Création compte et ajout dans le tableau des comptes de la banque */
public void creerCompte(double init);
/* Vérifier si un numéro de compte existe dans la banque? */
public boolean isNumCompte(int n);
/* Effectuer un dépôt pour un numero de compte */
public boolean depot(int num, double m);
/* Virement d’une banque à une banque */
public boolean virerVers(double m, int numS, int numD, Banque b);
/* Virement interne d’un compte à un autre*/
public boolean virerVers(double m, int numS, int numD);
/* Méthode interne (privée) pour récupérer un compte */
private Compte getCompteDeNum(int n)
/* Bilan (solde total) des comptes de la banque */
public double getSoldeTous();

Ines THABET Page 2


Programmation Orientée Objet Avancée

Nous désirons enfin afficher les comptes triés par leur solde décroissant. Pour cela, il faut créer
une classe ordreParSolde qui implante la Comparator<Compte> selon l’ordre des soldes
courants. Enfin, tous les comptes ayant un solde de compte null doivent être supprimés.

Ines THABET Page 3

Vous aimerez peut-être aussi