Bonjour à tous,
J'ai un petit prob que j'arrive pas à regler.
J'ai une Classe X avec disons une seule variable "nom".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
public class X
{
    private String nom;
 
    public String getNom()
    {
         return nom;
    }
    public void setNom (String nom)
    {
         this.nom = nom;
    }
// puis je mets 3 instance de cette objet dans une ArrayList
   public ArrayList getList()
   {
       ArrayList al = new ArrayList();
       for (int i = 0 ; i <3 ; i++)
          al.add(this);
   }
}

Dans une autre classe disons Y, je fait une requete dans la base qui me retourne 3 noms différents, par exemple "toto", "titi" et "tata". Je voudrais que la variable "nom" de chaque instance de la classe X prenne une valeur différente. pour cela je fais comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
public class Y
{
   public void afficherList(ArrayList list)
   {
        //Ici, requete dans la base qui me retourne 3 valeurs differentes
        for(int i = 0; i<list.size(); i++)
        {
             Object o = list.get(i);
             if (o instanceof X) //car après je vais mettre d'autres objets dans cette liste
	     {
		 oX = (X)o;
                 while (rs.next()
                 {
                     oX.setNom(rs.getString(...));
                 }
             }
        }   
   }
}
et j'ai toujours un seul nom qui est attribué 3 fois à la variable "nom". ça ne marche pas. ce que j'essaie d'obtenir, c'est que la variable de la 1e instance soit "toto", de la 2e instance "titi" et la 3e "tata".
Pourriez-vous m'aider SVP?
Je vous remercie d'avance