CodeGym /Blog Java /Random-FR /Comment convertir int en double en Java
Auteur
Pavlo Plynko
Java Developer at CodeGym

Comment convertir int en double en Java

Publié dans le groupe Random-FR

En bref sur les types int et double en Java

int est un type Java primitif pour les nombres entiers (tels que -25, 0, 1828182845). Ce type utilise 32 bits pour stocker une valeur variable. La plage des nombres int est de -231 à 231 - 1 ou, ce qui est identique, de -2147483648 à 2147483647. Le type double en Java représente des nombres à virgule flottante, alloue 64 bits en mémoire et la plage du type est -1,7 *10308 à 1,7*10308. Si vous représentez la plage de int sous la même forme, ce sera -2*109 à +2*109. Je pense qu'il est évident que n'importe quel nombre de type int tiendra dans la mémoire allouée pour un certain nombre de type primitif double. De plus, tout nombre entier peut être représenté sous la forme d'un nombre fractionnaire avec une partie fractionnaire nulle. Du point de vue mathématique, il ne fait aucun doute que : 5 = 5,0 or -57,0 = -57.

Conversion int en double

Du point de vue Java, les types double et int sont également compatibles. Étant donné que la conversion de int en double consiste à convertir du plus gros en plus petit, ce type de conversion appelle une casse ou un élargissement de type implicite. Vous pouvez convertir automatiquement int en double en Java, en affectant la valeur int à une variable double. Prenons un exemple de code de transtypage :

public class intToDouble {
   public static void main(String[] args) {
       int myInt1 = 10;
       int myInt2 = 2147483647;
       double myDouble1, myDouble2;
       System.out.println("my integers are: " + myInt1 + ", " + myInt2);
       myDouble1 = myInt1;
       myDouble2 = myInt2;
       System.out.println("after typecasting/widening to double: " + myDouble1 + ", " + myDouble2);
   }
}
Voici la sortie :
mes entiers sont : 10, 2147483647 après typage/élargissement au double : 10.0, 2.147483647E9
Notes : E9 signifie ici 109, c'est ce qu'on appelle la notation scientifique. Notez également que les nombres doubles sont généralement écrits avec un point séparant la partie fractionnaire. si vous déclarez une variable de double et y mettez une valeur, il n'est pas nécessaire de le faire, mais dans la sortie, le nombre double aura toujours une partie fractionnaire, même s'il est égal à zéro.

Conversion int en double en utilisant une opération numérique neutre

De plus, toutes les opérations numériques sur des variables de types différents en Java conduisent à un élargissement de type. Autrement dit, le résultat de l'opération sera d'un type plus large. Par conséquent, pour convertir de int en double, vous pouvez utiliser l'opération "neutre". Par exemple, multipliez un entier par 1,0 (un nombre double) ou ajoutez 0,0 à un entier. Voici un exemple d'un tel typage :

public class intToDouble {
   public static void main(String[] args) {
       double a = 1;  //you can also write 1.0 here. If you print it out it will be 1.0
       int b = 5, x = 7;
       System.out.println(x + 0.0);
       System.out.println(a*b);
   }
}
La sortie est :
7,0 5,0
Au fait, vous pouvez convertir en double non seulement int, mais tous les types primitifs numériques. Voici l'ordre de conversion possible du plus petit au plus grand :
Octet -> Court -> Char -> Int -> Long -> Flottant -> Double
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION