Comparaison entre 2 types

javasfutur - 17 mars 2013 à 02:56
 javasfutur - 18 mars 2013 à 21:54
Bonsoir,

Je suis actuellement entrain de développer une classe java qui permettra en utilisant la programmation par réflexion de me retourner le type de retour( comme un type Class) de ma méthode getNom par exemple se trouvant dans une javabean , ce que j'essaye de faire est de comparer ce type de retour de cette méthode avec les types primitifs et envolopes int,float,char.. et Integer,Float... le problème est que je n'arrive pas à faire cette comparaison entre le type retourné de ma methode qui est de type Class et les types prédefinis en java car je n'arrive meme pas à ecrire int ssans que eclipse me souligne le mot

Merci d'avance à toute personne qui m'aidera à trouver une solution

3 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
17 mars 2013 à 15:53
Salut,

Je ne comprend absolument rien, peut être qu'un morceau de code pourrait m'éclairer...
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
18 mars 2013 à 15:50
Bonjour,

Il y a confusion.
int, char, long ne sont pas des enveloppes. Ce sont des types primitifs (ils ne sont pas des descendants du type Object et ne sont pas des instances d'une classe dérivant du type Object. Les types Integer, Char et Long (et d'autres) SONT des types enveloppes, ils dérivent du type Object (regarder l'arborescence de l'héritage sur la page http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Integer.html). Les types enveloppes servent à disposer d'une représentation sous forme objet des types primitifs.

Vous ne pouvez pas comparer directement des types primitifs et des types Enveloppes. ni des types primitifs avec d'autre classes.

Et comme le dit Julien, sans un exemple du code sur lequel vous travaillez, il est difficile de deviner une erreur.
0
en fait AlexN vous avez raison c impossible de le faire c'est pour ça j'ai passer par faire une comparaison dans le cas du type primitif comme étant un string et ça ma permis de résoudre ce problème
0
Rejoignez-nous