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 :

comment trier les instances d'une classe selon un attribut choisi [FAQ]


Sujet :

Collection et Stream Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 49
    Points : 36
    Points
    36
    Par défaut comment trier les instances d'une classe selon un attribut choisi
    salut c'est rddev,
    ma question était comment trier les instances d'une classe selon un attribut choisi c'est à dire par exemple on considere que nous avons developpée
    une classe nomé test et belle a comme attributs id,nom prénom,age
    moi quand je la trie elle se trie automatiquement selon le premier atribut
    mais moi je veux pérsonnaliszeer ce trie par exemple selon l'age ou le prénom
    et exc..
    et merci

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Crées une classe TestComparator qui implémente java.util.Comparator. Dans le constructeur de TestComparator, tu peux faire passer le champ sur lequel tu veux que le tri soit fait. Et enfin, dans la méthode compare, selon le champ passé en constructeur, tu fais ta comparaison et tu retournes 0 en cas dégalité, 1 si arg1 > arg2 et -1 sinon !

    Enfin, pour l'utiliser, tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Collections.sort(taListeDeTests, new TestComparator("nom"));
    Changes nom par la propriété sur laquelle tu veux que le tri soit fait.

  3. #3
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    423
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 423
    Points : 303
    Points
    303
    Par défaut
    salut,
    tu peut aussi créer un tableau des instances.
    et dans la classe de ces instances tu fait une fonction :
    tonattribut gettonattribut()#{return tonattribut;}
    et puis tu trie le tableau suivant l'attribut que tu désire.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 49
    Points : 36
    Points
    36
    Par défaut brobleme de trie
    salut et merci pour votre aide,pour le tableau de type classe je sais
    le remplir du collection et je le trie à l'aide de la méthode Sort mais
    selon un atribut bien précis je n'arrives pas j'ai besoin du code
    et merci

  5. #5
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    423
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 423
    Points : 303
    Points
    303
    Par défaut
    salut,
    comme je t'ai dit tu déclare des fonctions de cette forme dan ton classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public tonattribut gettonattribut()
    {
    return tonattribut;
    }
    et puis tu fait une fonction de tri du tableau par appel de ces fonctions qui te retourne les valeurs des attributs des instances.

Discussions similaires

  1. Comment indexer les instances d'une classe
    Par 123djimy dans le forum Débuter
    Réponses: 5
    Dernier message: 25/10/2010, 03h19
  2. Utilisation de toutes les instances d'une classe dans un while
    Par canaboss dans le forum Débuter avec Java
    Réponses: 12
    Dernier message: 28/04/2008, 15h28
  3. Accéder à toutes les instances d'une classe
    Par MrGecko dans le forum Delphi
    Réponses: 15
    Dernier message: 14/05/2007, 00h50
  4. Connaitre toutes les instances d'une classe
    Par miniseb dans le forum Langage
    Réponses: 14
    Dernier message: 09/01/2006, 17h35

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