Partie entière double -> int

Signaler
Messages postés
78
Date d'inscription
jeudi 6 février 2003
Statut
Membre
Dernière intervention
4 octobre 2004
-
JHelp
Messages postés
261
Date d'inscription
jeudi 5 septembre 2002
Statut
Membre
Dernière intervention
6 octobre 2005
-
bonjour, sauriez vous comment récupérer la partie entière d'un double dans un int?
voici mes tentatives échouées:

double latitude = 1.0;
int degre_latitude = 0;

degre_latitude = Double.intValue(latitude);
-> Wrong number of arguments in method.
degre_latitude = latitude.Double.intValue();

-> Attempt to reference field Double in a double.

degre_latitude = latitude.intValue();

-> Can't invoke a method on a double.

merci

5 réponses

Messages postés
890
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2004
10
salut

double latitude = 1.0;
int degre_latitude = 0;
degre_latitude = Math.round(latitude);


Duss
Messages postés
78
Date d'inscription
jeudi 6 février 2003
Statut
Membre
Dernière intervention
4 octobre 2004

-------------------------------
Réponse au message :
-------------------------------

>
> salut
>
>
> double latitude = 1.0;
> int degre_latitude = 0;
> degre_latitude = Math.round(latitude);
> 

>
> Duss
Messages postés
78
Date d'inscription
jeudi 6 février 2003
Statut
Membre
Dernière intervention
4 octobre 2004

merci mais ca me donne cette erreur

Incompatible type for =. Explicit cast needed to convert long to int.
degre_latitude = Math.round(latitude);

et ne sais comment faire des "Explicit cast"
sauriez vous?
merci

> >
> > double latitude = 1.0;
> > int degre_latitude = 0;
> > degre_latitude = Math.round(latitude);
> > 
Messages postés
890
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2004
10
salut,

si tu met un double, ca te renvoit un long !
si tu mets un float, ca te renverra un int !

si tu veux convertir absolument en int depuis un double :

double latitude = 1.0;
int degre_latitude = 0;
degre_latitude = (int)Math.round(latitude); 


Duss
Messages postés
261
Date d'inscription
jeudi 5 septembre 2002
Statut
Membre
Dernière intervention
6 octobre 2005
11
Je veux juste préciser que la solution de Duss, ne donne pas la partie entiére, mais une valeure arrondie.
1.4 -> 1
1.6 -> 2
Si tu veus seulzement la partie entiére, cad, 1.4 ->1 et 1.6 -> 1, tu peux faire :
double latitude = 1.0;
int degre_latitude = 0;
degre_latitude = (int)latitude;

JHelp