IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Une list de liste d'objet


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut Une list de liste d'objet
    Salut à tous,

    J'aimerais que ma liste contienne une autre liste d'objet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     List listsysid=(List)(ProspectsKaboDao2.getInstance().getSysid(contrainte));		        
    	        for(int i=0;i<pagination.getAff();i++){
    	          Prospects_kabo pk=(Prospects_kabo)listsysid.get(i);
    			      Listintermediare.add(ProspectsKaboDao2.getInstance().getProspect(pk.getSysid()));		  
    	        }
    	        Listprospect.addAll(Listintermediare);
    listsysid contient tous les sysid

    Je fais ensuite une boucle de 0 à 25 ,et j'insere à chaque fois dans listintermediaire le resultat(new rappel("toto","titi"),qu'elle que chose de ce genre et pour finir j'aimeraiq que ma liste global listprospect contient toutes ses infos pour faire ensuite listprospect.get(0).get(0).get(nom)
    listprospect.get(0).get(1).get(nom)

    Lorsque j'affiche listprospect.get(0),il me retourne que le premier alors que j'ai envi qui me retourne les 25 résultats

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    en gros tu aimerais associer le résultat et tes sysid.
    Pour cela tu peut faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    listSysid;
    listIntermediaire;
    for(int i = 0;i < 25, i++){
    ArrayList tmp = new ArrayList();
    tmp.add(listSysid.get(i));
    tmp.add(llistIntemediaire.get(i));
    listProspect.add(tmp);
    }
    et évite les majuscule pour les noms de variables

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    c'est pas trop ca que je désire

    je veux que listprospect contient justement toutes la liste de list mais non pas listprospect.add(list.get(0)

    En gros je veux faire ceci
    listprospect.add({list.get(0),list.get(1)...})

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    percise exactement ce que doit contenir la listPospect je vois pas vraiment ce que tu veux faire

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    listprospect contient tout le contenu la lisst listintermediaire mais à la case 0

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    et je suppose que tu a essayé listProspect.add(listIntermediaire); ?

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    yes il me retourne qu'une seule valeur

  8. #8
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Essaye ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Vector<Vector> listProspect = new Vector<Vector>();
    		Vector<String> listIntermediaire = new Vector<String>();
     
    		listIntermediaire.add("test1");
    		listIntermediaire.add("test2");
     
    		listProspect.add(listIntermediaire);
     
    		System.out.println(listProspect.get(0).get(0));
    		System.out.println(listProspect.get(0).get(1));
    Chez moi ça marche.

  9. #9
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    listProspect.add(listIntermediaire);
    je suppose

  10. #10
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Euh oui tu as raison, j'ai modifié

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    merci de ta réponse

    Y a t'il moyen lorsque je fais listprospect.get(chiffre) de savoir s'il elle contient une valeur sans retourner d'erreurs biensur?

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Ben si tu veux pas lever d'exception, il faut que tu teste que ton chiffre est compris entre 0 et la taille de la liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if ((chiffre >= 0) && (chiffre < listproject.size())){
          listproject.get(chiffre);
    }
    et si ce chiffre est bien dans cette marge, c'est qu'il y a une valeur dans la liste a cette place

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 197
    Par défaut
    ca ne marche pas ta méthode d'en haut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     List listsysid=(List)(ProspectsKaboDao2.getInstance().getSysid(contrainte));		 
    	        Vector Listintermediare=new Vector();
    	        for(int i=0;i<pagination.getAff();i++){
    	          Prospects_kabo pk=(Prospects_kabo)listsysid.get(i);
    			      Listintermediare.add(ProspectsKaboDao2.getInstance().getProspect(pk.getSysid()));		  
    	        }
    	        Listprospect.add(Listintermediare);
    Listprospect est un vecteur

    ProspectsKaboDao2.getInstance().getProspect(pk.getSysid())); te retourne une liste de prospect de cette forme,new prospect(nom,prenom)

  14. #14
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Excuse moi, mais je vois pas trop où est le problème.

    Qu'est ce qui ne marche pas ?

  15. #15
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    ça y'est j'ai vu le problème pour que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    listProspect.get(0).get(0).get(nom);
    fonctionne, tu as deux solutions :

    Soit lors de l'initalisation du vecteur, tu lui indique ce qu'il va contenir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vector listintermediaire<Prospect> = new Vector<Prospect>();
    ou alors tu cast le contenu de ta list intermédiare lors de l'appel a ta fonction car si tu n'a pas indiqué quel élément était contenu dans la liste, la méthode get te renvoie un élément de type object :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Prospect)listProspect.get(0).get(0)).get(nom);

Discussions similaires

  1. Retrouver une propriété de liste via le modèle objet ?
    Par julien.63 dans le forum SharePoint
    Réponses: 3
    Dernier message: 12/03/2009, 10h54
  2. Réponses: 4
    Dernier message: 02/09/2008, 21h46
  3. Regrouper une liste en liste de listes
    Par West01 dans le forum Prolog
    Réponses: 12
    Dernier message: 14/03/2008, 15h07
  4. Réponses: 5
    Dernier message: 10/10/2007, 12h29
  5. Réponses: 4
    Dernier message: 06/08/2007, 18h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo