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

Java Discussion :

Trier les doublons


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Allier (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 4
    Par défaut Trier les doublons
    Bonjour,
    Je recherche une technique pour trier des doublons dans une liste de manière assez spéciale.
    Je possède une liste de répondant et je veux vérifier que je n'ai pas deux adresses identiques, et si j'ai deux adresses identiques, ne garder que celle qui a la date la plus vieille.
    J'ai bidouillée deux trois techniques mais ma liste est tellement lourde (34 000) que ça prend un temps fou.

    j'ai fait pas mal de trucs dans le code donc difficile de tout résumer ici...
    Cependant j'ai déjà redéfini le Equal de mes répondants.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
        @Override
        public boolean equals(Object obj) {
            if ((obj == null) || (getClass() != obj.getClass())) {
                return false;
            } else {
                Recipient objectRecipient = (Recipient) obj;
                String r1 = StringManager.replaceALlCharacters(getAddress()).toLowerCase();
                String r2 = StringManager.replaceALlCharacters(objectRecipient.getAddress()).toLowerCase();
                if (!StringManager.isStringEqualsString(r1, r2)) {
                    return false;
                }
     
            }
            return true;
        }
    Donc j'aurais besoin d'une méthode un peu magique qui me permette de faire ça... genre le Set, mais j'ai pas l'impression que je puisse choisir quel élément je supprime. et moi j'ai besoin de supprimer le plus vieux.. Parce que tout tester "à la main", ça me prend des plomb, et j'ai besoin que ça soit un minimum rapide.

    Voilà voilà, merci d'avance, et bonne journée !

    J'espère que c'est assez clair, je répondrais a tout si il y a besoin de précisions.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 42
    Par défaut
    Bonjour,

    à ta place, je ferai une hashmap(adresse,date) qui lors de l'ajout vérifie la présence de la clé.
    si présent je récupère la date et vérifie l'ancienneté entre les deux.

    a+.

Discussions similaires

  1. Trier les doublons de noms dans deux tables differentes
    Par TheMaluxis dans le forum Langage
    Réponses: 2
    Dernier message: 26/02/2013, 20h23
  2. [XML] Trier les doublons d'un fichier xml
    Par jameson dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 29/11/2010, 10h50
  3. boucle for pour trier les doublons
    Par gerald57 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/05/2008, 15h40
  4. Trier les doublons à la rédaction, dans l'éditeur HTML
    Par veevee dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/03/2008, 15h37
  5. Comment trier un tableau, et repérer les doublon?
    Par danje dans le forum Langage
    Réponses: 4
    Dernier message: 17/08/2005, 18h45

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