Comparaison de type en java
Discutez d'informatique ici !
-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 19:42
-
par Rockleader » 03 Déc 2014, 10:33
Bonjour,
j'ai essayé de m'intéresser à la partie bonus de l'un de mes tp java et l'on me demande de faire quelque chose de nouveau pour lequel j'aurai besoin d'un peu d'aide^^
Définir linterface Type contenant une opération de comparaison de types et les classes TInt, TBool et TList implantant cette interface. Les classes définiront aussi la méthode toString permettant dafficher les types selon la syntaxe Caml. Par exemple, une liste de liste dentiers sera affichée int list list.
Ma question est en réalité assez simple, comment fait on pour comparer des types è_é
J'imagine qu'il doit y avoir des fonctions définies dans le langage style isInt isBool etc etc qui devraient être capable de renvoyer un booléen en fonction du type argument mais ça me parait quand même un peu fumeux tout ça :hum:
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
-
fatal_error
- Modérateur
- Messages: 6610
- Enregistré le: 22 Nov 2007, 13:00
-
par fatal_error » 04 Déc 2014, 09:11
on peut s'en sortir plus simplement
- Code: Tout sélectionner
/*
Tous les types sont objectfs, et les primitifs sont probablement uppés en Object lors du passage à compare.
Il reste plus qu'à tester si un objet est une instance du type de l'autre (fils ou de meme type strict)
*/
public static boolean compare(Object a, Object b){
return a.getClass().isInstance(b) || b.getClass().isInstance(a);
}
la vie est une fête
-
Rockleader
- Habitué(e)
- Messages: 2126
- Enregistré le: 11 Oct 2011, 19:42
-
par Rockleader » 04 Déc 2014, 11:47
Je vais essayer de m'en sortir avec les pistes que tu m'as donné, merci.
Cette histoire est entièrement vraie puisque je l'ai inventé du début à la fin !
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 9 invités