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

Langage Java Discussion :

compare(capture#705 of ?,capture#705 of ?) cannot be applied to (jav


Sujet :

Langage Java

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 55
    Points : 48
    Points
    48
    Par défaut compare(capture#705 of ?,capture#705 of ?) cannot be applied to (jav
    Bonjour,

    J'ai le même genre de problème : j'ai pour une JTable un TableRowSorter(sorter) qui contient des comparateurs. J'aimerais utiliser la méthode compare d'un comparateur dans une certaine colonne mais lorsque je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    sorter.getComparator(column).compare(entry.getValue(column), beginning);
    j'obtient l'erreur :
    compare(capture#705 of ?,capture#705 of ?) in java.util.Comparator<capture#705 of ?> cannot be applied to (java.lang.Object,java.lang.Object)

    Le problème c'est que je ne connais pas le type générique de mon comparator sinon je pourrais faire quelque chose comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Comparator<String>)sorter.getComparator(column)).compare((String)entry.getValue(column), (String)beginning);
    ce qui fonctionne à la compilation et convient si le type générique est un String

    Est ce que quelqu'un saurait m'éclairer sur comment utiliser la méthode compare d'un des comparator de mon TableSorter?

    Merci

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    la méthode "bourrin" c'est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((Comparator<Object>)sorter.getComparator(column)).compare(entry.getValue(column), beginning);
    En sachant très bien que sur cette ligne (et le compilateur ne manquera pas de vous le rappeler) vous perdez toute validation à la compilation du typage. Si getValue retourne un Double, et que getComparator est un Comparator<String> ça pêtera à l'exécution.

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2007
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 55
    Points : 48
    Points
    48
    Par défaut
    Ok, merci :-)

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

Discussions similaires

  1. Erreur "method getRessource in class java.lang.class<T> cannot be applied to given types"
    Par jessy2020 dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 10/09/2011, 16h22
  2. [Language]Extends : cannot be applied to...
    Par Boumeur dans le forum Langage
    Réponses: 3
    Dernier message: 10/04/2005, 15h49
  3. Réponses: 10
    Dernier message: 10/10/2003, 14h25
  4. Capture d image par webcam
    Par moimoimoi3x dans le forum C++Builder
    Réponses: 7
    Dernier message: 03/07/2003, 08h48
  5. Réponses: 3
    Dernier message: 01/11/2002, 14h30

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