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 :

Afficher les éléments d'une ArrayList


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Par défaut Afficher les éléments d'une ArrayList
    Bonjour à tous,
    J'ai un petit souci d'ordre algorithmique que j'arrive pas à lui trouver une bonne solution.
    En fait j'ai une ArrayList comme celle ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    | cle1 | abc| cle3 | efg | cle3 | hij | cle2 | klm | cle1 | nop | cle2 | qrs |
    Je voudrai faire en sorte de parcourir ma liste et à chaque fois que je trouve deux clés identique par exemple <cle1,cle1> afficher les valeurs qui leurs suivent exemple <abc,nop>.

    Merci pour votre aide.

  2. #2
    Membre expérimenté Avatar de jiddou
    Inscrit en
    Août 2007
    Messages
    247
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 247
    Par défaut
    Pas clair du tout.tu veux dire que c'est un ArrayList de String ou d'un autre type.

  3. #3
    Membre confirmé Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Par défaut
    Dans ce cas là c'est un ArrayList de String. Mais ça change rien s'il s'agit d'un String où d'un autre type, car le raisonnement reste le même.

  4. #4
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    et tu es obligé d'utiliser ArrayList ? Pour quoi ne pas utiliser une table associative ?

    Ou au pire tu remplis cette table associative à partir de ta List ...

  5. #5
    Membre confirmé Avatar de ziad.shady
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 212
    Par défaut
    Merci pour ta réponse In.
    En fait dans un premier temps j'ai utilisé le HASHMAP, mais le problème c'est que j'ai des clés qui sont identiques et du coup quand j'essaye de la remplir à chaque fois qu'il trouve que la clé existe déjà il rajoute pas la deuxième.

    Je ne sais pas s'il y a une implantation du MAP permettant de garder des clés en double!!!

    Je suis preneur de toute réponse.

  6. #6
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    non je ne crois pas qu'une telle structure existe. Regarde peut être la librairie des jakarta commons qui propose certaines structures supplémentaires à celle de sun. (par exemple MultiValueMap)

    Sinon tu fait une HashMap de <String, ArrayList<String>>, si la clé existe déjà tu ajoutes une valeur dans la liste existante, sinon tu la crée ...

  7. #7
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    Citation Envoyé par ziad.shady Voir le message
    Merci pour ta réponse In.
    En fait dans un premier temps j'ai utilisé le HASHMAP, mais le problème c'est que j'ai des clés qui sont identiques et du coup quand j'essaye de la remplir à chaque fois qu'il trouve que la clé existe déjà il rajoute pas la deuxième
    Tu peux très simplement construire ta propre classe. Elle utilisera une HashMap. Pour les valeurs, ce sera toujours un ArrayList. Lorsque tu veux ajouter un couple (clé, valeur), tu récupères l'ArrayList correspondant à la clé et tu ajoutes la nouvelle valeur à la liste.
    Par contre, si la liste n'existe pas, alors tu la créés.

    EDIT : trop lent
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utiliser un controle utilisateur pour afficher les éléments d'une liste
    Par MiniCesc dans le forum Windows Presentation Foundation
    Réponses: 12
    Dernier message: 05/10/2010, 15h13
  2. Comment afficher les éléments d'une combobox
    Par dark_botsay dans le forum C#
    Réponses: 2
    Dernier message: 13/09/2010, 16h10
  3. afficher les éléments d'une liste
    Par jane40 dans le forum Débuter
    Réponses: 1
    Dernier message: 18/01/2009, 22h22
  4. [JSP]Afficher les images d'une ArrayList ?
    Par Bobsinglar dans le forum Struts 2
    Réponses: 7
    Dernier message: 08/04/2008, 18h18
  5. Réponses: 2
    Dernier message: 27/12/2005, 20h09

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