les collections en java

56
Les Collections Les Collections Axel KAMALAK

Upload: axel-kamalak

Post on 11-Nov-2014

2.609 views

Category:

Documents


3 download

DESCRIPTION

Cours dynamique sur les collections en JAVA.

TRANSCRIPT

Les CollectionsLes CollectionsAxel KAMALAK

Les CollectionsLes Collections

Une collection regroupe un ensemble d’objet du même type.

Il est plus puissant qu’un tableau.

Les CollectionsLes Collections

Une collection regroupe un ensemble d’objet du même type.

Il est plus puissant qu’un tableau.

Il faut spécifier la taille d’un tableau à sa création.

Les CollectionsLes Collections

Il est plus puissant qu’un tableau.

Il faut spécifier la taille d’un tableau à sa création.

Une collection adapte automatiquement sa Une collection adapte automatiquement sa taille.

Les CollectionsLes Collections

Il est plus puissant qu’un tableau.

Il faut spécifier la taille d’un tableau à sa création.

Une collection adapte automatiquement sa Une collection adapte automatiquement sa taille.

C’est un tableau DYNAMIQUE.

Il va grossir automatiquement pour contenir de nouveaux objets.

Les CollectionsLes Collections

Il existe différents types de collections.

� ArrayList

� Vector

� HashTable� HashTable

Les ArrayListsLes ArrayLists

Il appartient à la classe java.util.ArrayList.

Les ArrayListsLes ArrayLists

Il appartient à la classe java.util.ArrayList.

Il est possible d’accéder au élément par le biais d’un index.

Les ArrayListsLes ArrayLists

Il appartient à la classe java.util.ArrayList.

Il est possible d’accéder au élément par le biais d’un index.

Il adapte sa taille automatiquement.Il adapte sa taille automatiquement.

Les ArrayListsLes ArrayLists

Il appartient à la classe java.util.ArrayList.

Il est possible d’accéder au élément par le biais d’un index.

Il adapte sa taille automatiquement.Il adapte sa taille automatiquement.

Il existe plusieurs méthodes pour le manipuler.

Les ArrayListsLes ArrayLists

Pour créer une ArrayList

private ArrayList nomObjet = new ArrayList();ArrayList();

Les ArrayListsLes ArrayLists

ID | Nom

private ArrayList client = new ArrayList();private ArrayList client = new ArrayList();

Je vais créer par exemple une Arraylist qui va contenir des clients.

Les ArrayListsLes ArrayLists

ID | Nom

private ArrayList client = new ArrayList();private ArrayList client = new ArrayList();

Je vais créer par exemple une Arraylist qui va contenir des clients.

Pour accéder à mon Arraylist, je dois obligatoirement utiliser client.

Les ArrayListsLes ArrayLists

Pour ajouter un client

Méthode :

ID | Nom

Méthode :

boolean add ( Object o ) ;

boolean add ( position p , Object o);

Les ArrayListsLes ArrayLists

Pour ajouter un élément

boolean add ( Object o ) ;

0 | Naomi

Les ArrayListsLes ArrayLists

Pour ajouter un élément

boolean add ( Object o ) ;Rôle : Permet d’ajouter des éléments en fin de l’ArrayList.

0 | Naomie 1 | Gilles

Valeur de retour : Retourne « true » si succès.

Retourne « false » en cas d’échec.

Paramètre : Prend la référence de l’objet à ajouter dans l’ArrayList.

Les ArrayListsLes ArrayLists

client.add("MacLuc");

ID | Nom

client.add("MacLuc");

client.add(" Théo" );

Les ArrayListsLes ArrayLists

client.add("MacLuc" );

0 | MacLuc

client.add("MacLuc" );

client.add("Théo" );

Le nouvel objet vient s’ajouter automatiquement.

Les ArrayListsLes ArrayLists

Exemple de Code

client.add("MacLuc");

0 | MacLuc 1 | Théo

client.add("MacLuc");

client.add("Théo" )

Le nouvel objet vient s’ajouter automatiquement à la fin.

Les ArrayListsLes ArrayLists

boolean add ( position p , Object o ) ;

Rôle : Permet d’ajouter un élément e à la position p.

Valeur de retour : Retourne « true » si succès.

Retourne « false » en cas d’échec.Retourne « false » en cas d’échec.

Paramètre : Prend la référence de l’objet à ajouter , et la position dans l’ArrayList.

Les ArrayListsLes ArrayLists

Pour ajouter un client à une position p

0 | MacLuc 1 | Théo

Client c1 = new Client("Jean Paul");p

Client c1 = new Client("Jean Paul");Client c2 = new Client(« Jacques");

client.add(0,c1);client.add(1,c2);

Création d’un client c1

Les ArrayListsLes ArrayLists

Pour ajouter un client à une position p

0 | MacLuc 1 | Théo

Client c1 = new Client("Jean Paul");p

Client c1 = new Client("Jean Paul");Client c2 = new Client(" Jacques");

client.add(0,c1);client.add(1,c2);

Création d’un client c2

Les ArrayListsLes ArrayLists

Pour ajouter un client à une position p

0 | Jean Paul 1 | MacLuc

Client c1 = new Client("Jean Paul");

2 | Théo

pClient c1 = new Client("Jean Paul");Client c2 = new Client(" Jacques");

client.add(0,c1);client.add(1,c2);

Ajout du client Jean Paul à la position 0.Ajout du client Jean Paul à la position 0.Les autres éléments sont décalés automatiquement.Les autres éléments sont décalés automatiquement.

Les ArrayListsLes ArrayLists

Pour ajouter un client à une position p

0 | Jean Paul 2 | MacLuc

Client c1 = new Client("Jean Paul");

3 | Théo1 | Jacques

pClient c1 = new Client("Jean Paul");Client c2 = new Client(" Jacques");

client.add(0,c1);client.add(1,c2);client.add(1,c2);

Ajout du client Jacques à la position 1.Ajout du client Jacques à la position 1.Les autres éléments sont décalés automatiquement.Les autres éléments sont décalés automatiquement.

Les ArrayListsLes ArrayLists

Nous venons de voir qu’il y a une méthode add.

Elle va avoir deux comportements Elle va avoir deux comportements

différents .

Pourquoi cette différence ?

Les ArrayListsLes ArrayLists

Je sais pas !

Les ArrayListsLes ArrayLists

Lorsqu’on spécifie la position, l’élément va se placer à l’indice précis. Et les autres

éléments vont se décaler.éléments vont se décaler.

Lorsqu’on ne spécifie pas de position, les éléments se placent à la fin.

Les ArrayListsLes ArrayLists

Lorsqu’on spécifie la position, l’élément va se placer à l’indice précis. Et les autres

éléments vont se décaler.éléments vont se décaler.

Lorsqu’on ne spécifie pas de position, les éléments se placent à la fin.

Les ArrayListsLes ArrayLists

remplacer un élément par un autre.

Object set (int position, Object o ) ;

0 | Naomi 1 | Gilles

Rôle : Permet de remplacer un élément par un autre élément dans l’arrayList.

Valeur de retour : retourne l’objet d’origine.

Paramètre : Prend la référence de l’objet à ajouter et la position souhaitée dans l’ArrayList.

Les ArrayListsLes ArrayLists

Il est aussi possible de remplacer un élément par un autre.

0 | Albert 1 | Jeanne 2 | Cyril

.

Soit un client qui s’appelle Pierre. Je vais le placer à l’indice 1.

Les ArrayListsLes ArrayLists

Il est aussi possible de remplacer un élément par un autre.

0 | Albert 1 | Jeanne 2 | Cyril

.

Soit un client qui s’appelle Pierre. Je vais le placer à l’indice 1.

Client c1 = new Client("Pierre");

client.set(1,c1);

L’objet vient d’être crée.

Les ArrayListsLes ArrayLists

Il est aussi possible de remplacer un élément par un autre.

0 | Albert 1 | Pierre 2 | Cyril

.

Soit un client qui s’appelle Pierre. Je vais le placer à l’indice 1.

Client c1 = new Client("Pierre");

client.set(1,c1);

L’élément qui se trouve à la position 1 a été détruit.Et on a placé Pierre.

Les ArrayListsLes ArrayLists

Il est aussi possible de remplacer un élément par un autre.

0 | Albert 1 | Pierre 2 | Cyril

On remplace l’élément qui se trouve à l’indice i

.

Soit un client qui s’appelle Pierre. Je vais le placer à l’indice 1.

Client c1 = new Client("Pierre");

client.set(1,c1);

L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Il est aussi possible de remplacer un élément par un autre.

0 | Albert 1 | Pierre 2 | Cyril

On remplace l’élément qui se trouve à l’indice i

.

Soit un client qui s’appelle Pierre. Je vais le placer à l’indice 1.

Client c1 = new Client("Pierre");

Syntaxe : ArrayList.set( indice, l’élément)

client.set(1,c1);L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Pour supprimer un élément par son index

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

index

client.remove(2);

.

client.remove(0);

Les ArrayListsLes ArrayLists

Pour supprimer un élément par son index

0 | Albert 1 | Jeanne 2 | Rody 3 | Cyril

index

client.remove(2);

.

client.remove(0);

Le client à la position 0 vient d’être supprimé.

Les ArrayListsLes ArrayLists

Pour supprimer un élément par son index

0 | Albert 1 | Jeanne 2 | Cyril

index

client.remove(2);

.

client.remove(0);

Le client à la position 0 vient d’être supprimé.

Les ArrayListsLes ArrayLists

Pour savoir le nombre d’élément présent dans l’ArrayList.

0 | Albert 1 | Jeanne 2 | Cyril

présent dans l’ArrayList.

client.size();

.

Les ArrayListsLes ArrayLists

Pour savoir le nombre d’élément présent dans l’ArrayList.

0 | Albert 1 | Jeanne 2 | Cyril

présent dans l’ArrayList.

client.size();

.

Cette ligne va me retourner 3.

Les ArrayListsLes ArrayLists

Pour savoir le nombre d’élément présent dans l’ArrayList.

0 | Albert 1 | Jeanne 2 | Cyril

présent dans l’ArrayList.

client.size();

.

Cette ligne va me retourner 3.

Les ArrayListsLes ArrayLists

Pour savoir si notre ArrayList est vide.

0 | Albert 1 | Jeanne 2 | Cyril

client.isEmpty();

.

Les ArrayListsLes ArrayLists

Pour savoir si notre ArrayList est vide.

0 | Albert 1 | Jeanne 2 | Cyril

client.isEmpty();

.

Elle va nous retourner false car l’ArrayList n’est pas vide.

Les ArrayListsLes ArrayLists

Pour voir si un élément est bien présent.

0 | Albert 1 | Pierre 2 | Cyril

présent.

.

Je souhaite vérifier si Cyril est bien présent. Le client s’appelle Cyril.

client.contains(Cyril);

L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Pour voir si un élément est bien présent.

0 | Albert 1 | Pierre 2 | CyrilAlbert n’est pas égale à Cyril donc je poursuit.

présent.

.

Je souhaite vérifier si Cyril est bien présent. Le client s’appelle Cyril.

client.contains(Cyril);

L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Pour voir si un élément est bien présent.

0 | Albert 1 | Pierre 2 | CyrilPierre est-il égal à Cyril ? Non, donc je poursuit.

présent.

.

Je souhaite vérifier si Cyril est bien présent. Le client s’appelle Cyril.

client.contains(Cyril);

L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Pour voir si un élément est bien présent.

0 | Albert 1 | Pierre 2 | CyrilJe constate que Cyril est bien présentdans mon Arraylist.La méthode contains va retourner true.

présent.

.

Je souhaite vérifier si Cyril est bien présent. Le client s’appelle Cyril.

client.contains(Cyril);

L’élément qui se trouve à la position 1 a été détruit.

Les ArrayListsLes ArrayLists

Pour supprimer tous les éléments.

0 | Albert 1 | Pierre 2 | Cyril

.

client.clear();

Les ArrayListsLes ArrayLists

Pour supprimer tous les éléments.

.

client.clear();

TOUS LES ELEMENTS VONT ETRE SUPPRIMES.

Les ArrayListsLes ArrayLists

Pour afficher le contenu

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

.

Pour afficher le contenu d’une ArrayList, on va utiliser la méthode get.

Les ArrayListsLes ArrayLists

Pour afficher le contenu

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

.

Pour afficher le contenu d’une ArrayList, on va utiliser la méthode get.

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Pierre");client.indexOf( c1);

Nous avions un client c1

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Cyril");client.indexOf( c1);

Nous recherchons la position de Cyril.

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Cyril");client.indexOf( c1);

Nous recherchons la position de Cyril.

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Cyril");client.indexOf( c1);

Nous recherchons la position de Cyril.

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Cyril");client.indexOf( c1);

Nous recherchons la position de Cyril.

Les ArrayListsLes ArrayLists

Pour retrouver la position d’un élément.

0 | Pierre 1 | Albert 2 | Jeanne 3 | Rody 4 | Cyril

élément.

.

Client c1 = new Client("Cyril");client.indexOf( c1);

Nous venons de le retrouver , la méthode va retourner 4