Les vecteurs en Java - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

Les vecteurs en Java

Description:

Implante la notion de liste de r f rences d'objets. Capable de s'agrandir en fonction des ... phrase.insertElementAt( 'Boire', 0 ); phrase.setElementAt( ' fumer' ... – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 13
Provided by: lucli
Category:
Tags: boire | java | les | vecteurs

less

Transcript and Presenter's Notes

Title: Les vecteurs en Java


1
Les vecteurs en Java
  • IP10

2
Limite des tableaux en Java
  • Allocation gérée par le programmeur
  • Déclaration de la taille
  • Taille prédéfinie gt tableau figé une fois pour
    toutes

int unTableau new int 1024 for ( int
i0 i lt unTableau.length i ) unTableaui
i
unTableau

0
1
2
0
unTableau.length - 1
indice
3
Vector
  • Implante la notion de liste de références
    dobjets
  • Capable de s'agrandir en fonction des besoins
  • Instancier un Vector
  • new Vector ()
  • On n'indique pas sa dimension

Vector phrase new Vector ()
4
Ajouter / remplacer un élément
  • Ajout
  • à la fin void addElement( Object obj )
  • à la position index void insertElementAt (
    Object obj, int index)
  • index est compris entre 0 et nombre d éléments
    du vecteur -1
  • Remplacer
  • à la position index void setElementAt ( Object
    obj, int index )

phrase.addElement ( " ou" ) Rappel une
variable phrase.addElement( " conduire" ) de
type String est un phrase.addElement( " il faut"
) objet en java. phrase.addElement( " choisir"
) phrase.insertElementAt( "Boire", 0
) phrase.setElementAt( " fumer", 2 )
5
Supprimer un élément
  • // enlever l'élément à la position index void
    removeElementAt ( int index )
  • // vider le vecteurvoid removeAllElements ()
  • // Enlève la première occurrence de obj// Le
    résultat est false si lobjet nest pas trouvé
    boolean removeElement ( Objet obj )

phrase.removeElement ( " ou" )
6
Méthodes dinterrogation
  • Déterminer le nombre déléments
  • int size ()
  • Tester si la séquence est vide
  • boolean isEmpty ()
  • Obtenir un élément
  • Object firstElement ()
  • Object lastElement ()
  • Object elementAt ( int index )
  • Rechercher
  • boolean contains ( Object obj )
  • int indexOf ( Object obj ) // retourne -1 si
    la recherche naboutit pas
  • int lastIndexOf ( Object obj ) // index de la
    dernière occurrence

7
Exemples d'interrogation
Vector phrase new Vector() int
i String phraseEntiere "" // // for (
i0 i lt phrase.size() i ) phraseEntiere
phraseEntiere phrase.elementAt( i
) System.out.println( phraseEntiere )
8
Vecteur d'objets
  • Un vecteur ne stocke que des objets
  • il n'existe pas de vecteur de "int", "double"
    (les types élémentaires)
  • Envelopper les types élémentaires int, double
  • Utiliser les classes enveloppes correspondant aux
    types élémentaires
  • Un même vecteur peut stocker simultanément des
    objets de différentes classes
  • il est donc nécessaire de typer explicitement les
    objets extraits d'un vecteur avant de les
    utiliser
  • utilisation du "cast" par exemple, (type)
    elementAt( index )

9
Les classes enveloppes
  • Encapsuler un type élémentaire dans un objet
  • Boolean, Character, Double, Integer, Long
  • Méthodes pour extraire la valeur encapsulée
  • ltnomDuTypeElementairegtValue()

Constructeur new classeEnveloppe( )
Type élémentaire
Classe enveloppe
Méthode d'extraction ltnomDuTypeElementairegtValue
()
10
Exemple de la classe Integer
Integer
int i Integer enveloppe new Integer (3) i
enveloppe.intValue()
value entier
Integer() intValue() entier
new Integer( ... )
int
Integer
enveloppeInteger
intValue()
11
Vecteur dentiers
  • Encapsulation
  • int ? Integer
  • double ? Double

int x 1 unVector.addElement ( new Integer (x)
)
Ajouter
unVector
Accéder
int y ( (Integer) ( unVector.elementAt( i ) )
).intValue()
12
SommeDesDepots
import java.util. class CompteBancaire
Vector historiqueDepots CompteBancaire
() historiqueDepots new
Vector() void deposer ( double montant )
historiqueDepots.addElement( new Double
(montant) ) double sommeDesDepots ()
double sommeDesDepots 0 Double
depot for ( int i0 i lt
historiqueDepots.size() ii1 ) depot
(Double)( historiqueDepots.elementAt(i)
) sommeDesDepots sommeDesDepots
depot.doubleValue()
return sommeDesDepots
CompteBancaire.java
Write a Comment
User Comments (0)
About PowerShow.com