Faire l'union deux listes

ulysse00 Messages postés 291 Date d'inscription lundi 6 novembre 2006 Statut Membre Dernière intervention 12 mai 2013 - 2 juin 2007 à 15:16
ulysse00 Messages postés 291 Date d'inscription lundi 6 novembre 2006 Statut Membre Dernière intervention 12 mai 2013 - 5 juin 2007 à 15:31
salut
j'ai deux liste
A =[[12,13,15],[134]]
B=[[12,13,15],[1356]]
je cherche a faire l'union entre deux liste A et B dans C de façon avoir
C==[[12,13,15],[134],[1356]]éviter les doublons pas d'avoir C=[[12,13,15],[134],[12,13,15],[1356]]
voila ce que je viens de faire
<!-- BEGIN TEMPLATE: bbcode_code -->

 
C=A
for(iterator i =B.iterator();i=hasnext();){
C.add(i.next());}
 
}
merci

3 réponses

ulysse00 Messages postés 291 Date d'inscription lundi 6 novembre 2006 Statut Membre Dernière intervention 12 mai 2013 1
2 juin 2007 à 16:55
salut j'ai encore modifié le code mais donne toujours  C=[[12,13,15],[134],[12,13,15],[1356]] 

 
C=A;
for(int j =0;jsize();j++){
ArrayList d =(ArrayList) B.get(j);
if(!C.contains(d))
C.add(d);
}
System.out.println(C);
0
the_wwt Messages postés 177 Date d'inscription jeudi 5 octobre 2006 Statut Membre Dernière intervention 16 janvier 2009 1
4 juin 2007 à 14:07
Bonjour,
Désolé mais chez moi ça marche:

public static void main(String[] args) {
        ArrayList> a = new ArrayList>();
        ArrayList> b = new ArrayList>();
        ArrayList> c = null;
       
        ArrayList tmp = new ArrayList();
        tmp.add(12);
        tmp.add(13);
        tmp.add(15);
        a.add(tmp);
       
        tmp = new ArrayList();
        tmp.add(134);
        a.add(tmp);


        System.out.println("a=" + a);
       
        tmp = new ArrayList();
        tmp.add(12);
        tmp.add(13);
        tmp.add(15);
        b.add(tmp);
       
        tmp = new ArrayList();
        tmp.add(1356);
        b.add(tmp);



        System.out.println("b=" + b);
       
        c = a;
        for(int j =0; j < b.size(); j++){
        ArrayList d =(ArrayList) b.get(j);
        if(!c.contains(d))
        c.add(d);
        }



        System.out.println("c=" + c);
}

Affiche les tableaux intermédiaires, ils sont probablement constitués d'autres choses.
Le fait que ce soit de la syntaxe 5 ne change rien.
Cordialement,
Pierrick
0
ulysse00 Messages postés 291 Date d'inscription lundi 6 novembre 2006 Statut Membre Dernière intervention 12 mai 2013 1
5 juin 2007 à 15:31
mais pourquoi ma méthode ne fonctionne pas et je remarque que c'est la meme chose il y a pas une difirence entre ton code et mon code
0
Rejoignez-nous