| Dans cette fiche... |
| Difficulté :
|
Résultat |
Si vous connaissez les tableaux, vous savez que ceux-ci comportent des limites :
Les vecteurs pallient ces 2 inconvénients... |
// ----------------------------------------- // VECTEUR1 : LES VECTEURS EN JAVA // -----------------------------------------
import java.applet.*; import java.awt.*; import java.util.Vector;
public class Vecteur1 extends Applet
{
// Déclaration du vecteur
Vector v;
// -------------------------- // INITIALISATION DE L'APPLET // --------------------------
public void init()
{
// Couleur de fond
setBackground(Color.black);
// Initialisation du vecteur
v = new Vector();
v.addElement("lundi");
v.addElement("mardi");
v.addElement("mercredi");
}
// --------- // AFFICHAGE // ---------
public void paint(Graphics g)
{
String s;
int i;
// Nombre d'éléments dans le vecteur
g.setColor(Color.white);
g.drawString("Nombre d'éléments : " + v.size(), 15, 15);
// Afficher le contenu du vecteur g.setColor(Color.orange);
for(i = 0; i < v.size(); i++)
{
s = (String)v.elementAt(i);
g.drawString(s, 15, 30 + i*10);
}
// Afficher les première et dernière valeurs du vecteur
g.setColor(Color.yellow);
g.drawString("Le premier élément est : " + (String)v.firstElement(), 15, 70);
g.drawString("Le dernier élément est : " + (String)v.lastElement(), 15, 80);
}
}
Les lignes non commentées ont déjà été traitées dans les exemples précédents.
import java.util.Vector; |
| Pour pouvoir utiliser l'objet Vector, il faut inclure le package java.util.Vector
en début de listing. On aurait également pu écrire : import java.util.*; pour inclure tous les objets du package util. |
// Déclaration du vecteur Vector v; |
| Le commentaire parle de lui-même : on vient de déclarer une variable de
type Vector. Cette variable n'a pour l'instant aucune valeur (elle n'est pas initialisée). |
// Initialisation du vecteur v = new Vector(); |
| L'instruction new permet d'initialiser l'objet Vector
(comme pour tout objet). On aurait pu également écrire : v = new Vector(5); pour réserver 5 valeurs dès le départ dans le vecteur. |
v.addElement("lundi");
v.addElement("mardi");
v.addElement("mercredi");
|
| Maintenant que le vecteur existe, on peut lui ajouter des éléments,
grâce à la méthode addElement(). Les éléments s'ajoutent en fin de
vecteur. Chaque élément se voit attribuer implicitement un indice, allant ici de 0 à 2 (et non de 1 à 3). Dans notre exemple, ce sont des chaînes de caractères qui sont
ajoutées au vecteur. On peut bien sûr stocker tout type d'objet dans un vecteur. |
| g.drawString("Nombre d'éléments : " + v.size(), 15, 15); |
| Il est possible de connaître le nombre d'objets stockés dans un vecteur
(et de l'afficher). On utilise pour cela la méthode size() de l'objet Vector. |
| for(i = 0; i < v.size(); i++) { s = (String)v.elementAt(i); g.drawString(s, 15, 30 + i*10); } |
| Pour afficher tous les éléments (de 0 à n-1), on utilise une boucle for. La méthode elementAt() donne l'objet stocké dans le vecteur en position i. Attention : la méthode elementAt()
donne un objet générique. Il faut donc convertir l'objet pour l'utiliser.
Si le vecteur avait servi à stocker des applets, par exemple, on aurait écrit :
(Applet)v.elementAt(i) |
| g.drawString("Le premier élément est : " + (String)v.firstElement(), 15, 70); g.drawString("Le dernier élément est : " + (String)v.lastElement(), 15, 80); |
| Des variantes de elementAt() firstElement() et lastElement()
permettent de connaître le premier le dernier objet stocké. Ce qui veut dire que :
On fait plus rapide cette fois : au lieu de passer par une variable intermédiaire, on convertit directement v.firstElement() et v.lastElement() au moment de l'affichage. |
Voici le code qui a été utilisé dans cette page HTML pour faire apparaître l'applet :
<applet code="Vecteur1.class" width=250 height=90> Votre navigateur n'est pas compatible Java ! </applet>
Pour plus de précisions sur l'intégration d'une applet, cliquez ici.
| Cette section vous intéresse ? Abonnez-vous ! |
|