JAVA 06 : COMPLÉMENTS – ARRAYLIST D`OBJETS – OBJETS

Transcription

JAVA 06 : COMPLÉMENTS – ARRAYLIST D`OBJETS – OBJETS
JAVA 06 : COMPLÉMENTS – ARRAYLIST D'OBJETS – OBJETS COMPOSÉS
ARRAYLIST D'OBJETS
Lorsque vous instanciez et initialisez un ArrayList de pays par exemple :
List<String> lesPays = new ArrayList<String> ();
lesPays.add("France"); lesPays.add("Allemagne"); vous ajoutez à la liste : lesPays un Objet de la classe String, on aurait pu écrire :
lesPays.add(new String("France")); Il est donc possible de créer un ArrayList de La classe Person vu en TP :
List<Person> lesPersonne = new ArrayList<Personne> ();
lesPersonne.add(new Person( '' toto'' , 25, 1.8, 70));
lesPersonne.add(new Person( '' titi'' , 23, 1.74, 65));
lesPersonne.add(new Person( '' tutu'' , 27, 1.68, 58));
Et ensuite de parcourir cette collection pour afficher ou calculer les différentes caractéristiques d'une personne :
Exemple :
1 ­ Comment afficher le nom de chaque personne figurant dans la collection ? 2 ­ Comment afficher la taille moyenne des personnes figurant dans la collection ?
CLASSE COMPOSÉE Dans la classe DVD vu en TP, l'attribut dateSortie est une instance ( un objet) de la classe GregorianCalendar, au même tire que l'attribut String est une instance de la classe String.
DVD
­ titre : String
­ couleur : char
­ dateSortie : GregorianCalendar
(Objet GregorianCalendar)
+ toString() : String
+ prixDVD() : double
+ isNouveaute() : boolean
Pour créer un objet GregorianCalendar, on peut utiliser un des constructeurs de la classe:
Attention : les mois commencent à zéro GregorianCalendar dateSortie = new GregorianCalendar(2013,0,15);
DVD dvd = new DVD("les seigneurs",'R',dateSortie) ;
on peut également utiliser la syntaxe suivante : DVD dvd = new DVD("les seigneurs",'R',new GregorianCalendar(2013,0,15)) ;
Autre exemple : Comment dans la classe Personne faire figurer le fait qu'une personne a une adresse ?
Personne
­ nom : String
­ age : int
­ taille : double
­ poids : double
+ toString() : String
+ isAdult() : boolean
+ determineIMC() : double
+ significationIMC() : String
1 avoir >
Adresse
1 ­ rue : String
­ ville : String
int
­ codePostal : String
+ toString() : String
Si on change les règles, et qu'on vous indique qu'une personne peut avoir plusieurs adresses ( adresse principale, adresse de livraison, adresse de travail etc...), comment faire figurer ces adresses dans la classe Personne ?
TP6 JAVA – COLLECTION D'OBJET Exercice 1 :
Initialiser une liste de personne : List<Person> lesPersonne = new ArrayList<Personne> ();
lesPersonne.add(new Person( '' toto'' , 25, 1.8, 70));
Ajouter à cette liste une dizaine de personnes ( prendre les personnes de la classe) 1 ­ Afficher la taille moyenne et le poids moyen des personnes figurant dans la collection ?
2 – Afficher les caractéristiques de la personne la plus grande 3 – Afficher les caractéristiques de la personne la plus maigre
Exercice 2 : 1 – Écrire une classe adresse
Adresse
­ rue : String
­ ville : String
­ codePostal : String
+ toString() : String
2 – Modifier la classe Person pour prendre en compte le fait qu'une personne à une adresse
3 – Ajouter à votre List<Person> lesPersonne, l'adresse de chaque personne. ( mettre pour quelque personne le code postal de Melun : 77 000)
4 – Afficher toutes les personnes qui habitent Melun
Exercice 3 :
1­ Modifier la classe Person pour prendre en compte le fait qu'une personne peut avoir plusieurs adresses.
2 ­ Ajouter à votre List<Person> lesPersonne, les adresses de chaque personne. ( mettre pour quelque personne plusieurs adresses)
3 – Afficher toutes les personnes qui ont plus d'une adresse
Extrait : Class ArrayList<E>
Constructor Summary
ArrayList() Constructs an empty list with an initial capacity of ten.
ArrayList(int initialCapacity) Constructs an empty list with the specified initial capacity.
Method Summary
boolean
add(E e) Appends the specified element to the end of this list.
void
add(int index, E element) Inserts the specified element at the specified position in this list.
void
clear() Removes all of the elements from this list.
E
boolean
E
boolean
E
int
get(int index) Returns the element at the specified position in this list.
isEmpty() Returns true if this list contains no elements.
remove(int index) Removes the element at the specified position in this list.
remove(Object o) Removes the first occurrence of the specified element from this list, if it is present.
set(int index, E element) Replaces the element at the specified position in this list with the specified element.
size() Returns the number of elements in this list.

Documents pareils

ArrayList en Java

ArrayList en Java – ligne1 : déclare un ArrayList (collection) de chaînes de caractères – lignes 2-3 : y ajoute 2 objets chaînes de caractères ; remarquer la deuxième forme d’ajout : on instancie un objet qu’on ajou...

Plus en détail

Un petit mot sur les ArrayList

Un petit mot sur les ArrayList Comment ? Grâce à des objets collections ! L’avantage de ces objets c’est qu’ils sont dynamiques, et donc ils n'ont pas de taille à prédéfinir ( on ne peut donc pas dépasser leur capacité). L’Arra...

Plus en détail

La classe ArrayList permet de mettre en oeuvre un tableau dont la

La classe ArrayList permet de mettre en oeuvre un tableau dont la Exemple [voir] import java.util.ArrayList; import java.util.Iterator; public class programme { public static void main(String[] args) { ArrayList tableau = new ArrayList(500); for(int i = 1; i <= 1...

Plus en détail