Switch avec un double

Résolu
s010179 Messages postés 14 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 8 novembre 2006 - 14 mars 2006 à 11:52
s010179 Messages postés 14 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 8 novembre 2006 - 14 mars 2006 à 18:03
Bonjour,



Pourquoi je peux utiliser une variable de type int ou string dans mon
switch alors que quand je lui passe une variable de type double (ou
float) il me renvoi :



Variable d'un type intégral est attendue.



Merci à tous

seb
A voir également:

6 réponses

TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
14 mars 2006 à 12:23
Parce que les double ne sont pas des types intégraux.


Voilà les 9 types intégraux :

sbyte
byte
short
ushort
int
uint
long
ulong
char

le switch attend soit ces types soit une string.



::|The [mailto:S@ib S@ib]|::
MVP C#.NET
3
atmeitsatme Messages postés 58 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 15 novembre 2006
14 mars 2006 à 12:02
Bonjour,
Je ne pourrais pas te dire pourquoi,
Mais pour attendre que quelqu'un répond à ta question
Tu peus essayé de faire monDouble.ToString()
et dans ton switch mettre ceDouble.ToString() pour le finalement le comparré à une chaine et non à un double.
0
s010179 Messages postés 14 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 8 novembre 2006
14 mars 2006 à 12:08
Merci pout ta réponse mais la solution de convertion en string me pose le problème suivant dans l'un de mes case :

swith (result)

{

case ((result > 0.1) || (result < 0.2)) :

...

}

s010179
0
atmeitsatme Messages postés 58 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 15 novembre 2006
14 mars 2006 à 12:22
Salut,
de toute façon un sxitch n'accepte que les string ou les int,
donc si tu as une grande liste de case dans ton switch tu peus mettre les cas non gérer comme "case ((result > 0.1) || (result < 0.2)) " dans un if avant ton switch, sinon rien ne t'empeche de faire à l'ancienne avec des if (déconsiller).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
atmeitsatme Messages postés 58 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 15 novembre 2006
14 mars 2006 à 12:32
Donc pas de double !
0
s010179 Messages postés 14 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 8 novembre 2006
14 mars 2006 à 18:03
Merci à tous pour vos réponses.

s010179
0
Rejoignez-nous