Probléme d'affichge en java

Tadou -  
hamzafes Messages postés 243 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je veut faire l'affichage du contenu d'un Vector sous la forme suivante:

{<elt1>, <elt2>, ... , <eltn>}


comment je peut le faire.
mairçi d'avance
A voir également:

3 réponses

alexdelareunion Messages postés 545 Date d'inscription   Statut Membre Dernière intervention   142
 
pas très claire ta question... a propos le Vector est deprecated, regarde ArrayList
0
hamzafes Messages postés 243 Date d'inscription   Statut Membre Dernière intervention   54
 
Parcourez le vector en entier, et appelez la méthode toString des éléments du vector s'ils sont des objets et toString a été redéfinie dans la classe à laquelle il appartiennent

Exemple:

Vector V=new Vector(10);

for(int i=0;i<V.size();i++)
V.add("élément "+i);

// affichage

String str="{";

for(int i=0;i<V.size();i++)
str+=", "+V.get(i);

str="}";

System.out.println(str);


// pas besoin de faire un casting au niveau de V.get(i)
// l'appel de toString est implécite

LLah mo3ine
0
alexdelareunion Messages postés 545 Date d'inscription   Statut Membre Dernière intervention   142
 
ça m'a l'air correct sauf ta dernière initialisation de str qui devrait être str+="}";

Dans ton code tu dis que le toString() est inutile car appelé implicitement. C'est juste, mais ce n'est pas très clean de faire ainsi car les variables que tu récupère de ton Vector, sont toujours de type Object.
Tu risque d'avoir des surprises un jour en faisant ainsi. De plus pour éviter des erreurs d'exécution dues à un ajout d valeurs de types différents dans ton Vector, il est courant d'utiliser la "généricité". Par exemple :

Vector<String> monVecteur = new Vector<String>();

Ce genre de déclaration rend impossible la compilation si tu essaye de rentrer autre chose que du String dans ce vecteur. Et c'est vraiment très utile quand ton code commence à devenir complexe...
0
hamzafes Messages postés 243 Date d'inscription   Statut Membre Dernière intervention   54
 
tout à fais d'acord
0