Récupération d'objet de type vector dans un vector.

Résolu
asoaomar Messages postés 28 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 19 novembre 2009 - 19 nov. 2009 à 23:20
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 - 20 nov. 2009 à 09:35
Bonjour,

J'ai un petit problème pour la récupération d'objet de type vector dans un vector.
le code est le suivant:

try{
while((l1=br.readLine())!=null){
st1=new StringTokenizer(l1);
v1.clear();
while(st1.hasMoreTokens())
{

buf=st1.nextToken();
v1.addElement(buf);
}

im1.addElement(v1);
}

System.out.println(im1.get(6));
/*
v1,im1 : vector
br :BufferedReader
st1:StringTokenizer
le dernier vecteur v1 inscrit dans le vecteur im1 sera affiché et non pas le 6éme!!!

Merci d'avance.

1 réponse

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 8
20 nov. 2009 à 09:35
Salut,

normal, tu ajoutes toujours la même instance dans im1 (sympa le nom de variables qui veut dire qqchose).
Il faut créer une nouvelle liste pour chaque ligne.
Au passage, il est conseillé d'utiliser la méthode split de String plutôt que StringTokenizer

    while((l1=br.readLine())!=null){
        st1=new StringTokenizer(l1);
        v1 = new Vector();
        while(st1.hasMoreTokens()){
            v1.addElement(st1.nextToken());
        }
        im1.addElement(v1);
    }
 
3