Probléme d'affichge en java

Tadou -  
hamzafes Messages postés 258 Statut Membre -
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
Configuration: Windows XP
Firefox 2.0.0.11

3 réponses

  1. alexdelareunion Messages postés 555 Statut Membre 142
     
    pas très claire ta question... a propos le Vector est deprecated, regarde ArrayList
    0
  2. hamzafes Messages postés 258 Statut Membre 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
  3. alexdelareunion Messages postés 555 Statut Membre 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
    1. hamzafes Messages postés 258 Statut Membre 54
       
      tout à fais d'acord
      0