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

avec Java Discussion :

Comment avoir plusieurs elements dans une liste chainée


Sujet :

avec Java

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Avril 2007
    Messages : 143
    Points : 57
    Points
    57
    Par défaut Comment avoir plusieurs elements dans une liste chainée
    Bonsoir a vous,

    Voila je débute en java, et j'aimerais savoir si on peut avoir une liste doublement chaînée(déjà implémenté dans l'api) contenant plusieurs éléments(en l'occurrence String et Integer), c'est dans le but de trier cet ensemble soit par Integer soit par String quand les Integers sont égaux.
    Ou si il existe d'autres structures me permettant de réaliser ce tri.

    Merci par avance

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    Tu veux dire une liste triée simultanément sur deux critère de tris? Je suis pas sur de comprendre ce que tu cherche. Toutes les classes java gérant les liste sont dans l'api Collection ici

  3. #3
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Avril 2007
    Messages : 143
    Points : 57
    Points
    57
    Par défaut
    oui effectivement je souhaiterais une liste triée simultanément sur deux critère de tris.
    Mais je ne vois pas comment faire pour avoir plusieurs éléments, par exemple une LinkedList sa méthode add a pour prototype: add(Object o). Donc comment faire pour avoir un couple (String, Integer) dans la même cellule?

    Il faut refaire une class avec ces deux valeurs et ensuite faire une LinkedList de cette classe?

    Merci pour votre aide

  4. #4
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Points : 1 381
    Points
    1 381
    Par défaut
    Tu peux utiliser la classe ListIterator pour parcourir ta liste en avant et en arrière. Quant au tri de la liste, tu peux appeler la méthode Collections.sort() en lui passant comme argument un objet Comparator répondant à ton besoin.

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    et oui, si tu veux stocker des structure complexes (exemple une paire string , integer) dans ta liste, faut les wrapper dans un objet. Regarde aussi aux map, qui font des associations clé->valeur. La LinkedHashMap garde l'ordre d'ajout tout en permettant d'accéder aussi par la clé.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    Ta question n'est pas très claire.

    Si je comprend bien tu veux stocker des paires(String,Integer) dans une liste chainée. Je ne vois pas trop en quoi elle doit etre doublement chainée.

    Vu qu'en fait tu veux finalement qu'un tri sur les Integer, puis sur les String en cas d'égalité.

    Tu te fais une classe qui contient un String et un Integer, tu implémente CompareTo et tu mets tout ça dans un TreeSet ?

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/11/2012, 12h51
  2. Réponses: 2
    Dernier message: 14/11/2008, 18h31
  3. Comment afficher plusieurs elements dans une meme alert()
    Par monphp dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/05/2007, 22h46
  4. [langage] Comment rajouter des champs dans une liste
    Par toto_titi dans le forum Langage
    Réponses: 4
    Dernier message: 28/08/2003, 14h09

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