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

ASP.NET Discussion :

IComparer et ordre de tri


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut IComparer et ordre de tri
    Bonjour,

    Il y a plusieurs exemple sur le net avec cette syntaxe :

    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
     
    int IComparer.Compare(object a, object b)
            {
                car c1 = (car)a;
                car c2 = (car)b;
     
                if (c1.year < c2.year)
                    return 1;
     
                if (c1.year > c2.year)
                    return -1;
     
                else
                    return 0;
            }
    Quelle est la difference avec celle la ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    int IComparer.Compare(object a, object b)
            {
                car c1 = (car)a;
                car c2 = (car)b;
     
    return String.Compare(c2.year.ToString(), c1.year.ToString());
            }

    Merci

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Si le but est de comparer les variables "year" qui sont peut-être des objets DateTime, alors il y a une grosse différence entre les 2.

    La 1ere implémentation compare bien deux objets de type DateTime alors que la deuxième compare deux chaines de caractères. Le résultat n'est pas le même.

  3. #3
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    C'est vrai tu as raison.

    Mais si je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    return c1.year.CompareTo(c2.year);
    Est ce la meme chose ? je compare des datetimes.

  4. #4
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    C'est la même chose effectivement.

  5. #5
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    bizarre que dans bcp d'article ils utilisent la premiere methode !!!!

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

Discussions similaires

  1. [DisplayTag] Garder l'ordre de tri +en-tête
    Par Fr@ncky dans le forum Taglibs
    Réponses: 6
    Dernier message: 14/05/2007, 14h13
  2. Réponses: 1
    Dernier message: 29/03/2006, 11h33
  3. [SQL2K]URGENT: récupérer jeu de caractères et ordre de tri ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/04/2005, 11h43
  4. Ordre des tris / fonction upper
    Par slylafone dans le forum Débuter
    Réponses: 7
    Dernier message: 18/01/2005, 17h53
  5. Réponses: 7
    Dernier message: 20/10/2004, 08h26

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