CodeGym /Blogue Java /Random-PT /Como converter int para double em Java
John Squirrels
Nível 41
San Francisco

Como converter int para double em Java

Publicado no grupo Random-PT

Resumidamente sobre os tipos int e double em Java

int é um tipo Java primitivo para números inteiros (como -25, 0, 1828182845). Este tipo usa 32 bits para armazenar um valor de variável. O intervalo de números int é de -231 a 231 - 1 ou, o que é o mesmo, de -2147483648 a 2147483647. Double type em Java representa números de ponto flutuante, aloca 64 bits na memória e o intervalo do tipo é -1,7 *10308 a 1,7*10308. Se você representar o intervalo de int da mesma forma, será -2*109 até +2*109. Eu acho que é óbvio que qualquer número de tipo int caberá na memória alocada para um número de tipo primitivo duplo. Além disso, qualquer número inteiro pode ser representado como um número fracionário com uma parte fracionária zero. Do ponto de vista matemático, não há dúvida de que: 5 = 5,0 ou -57,0 = -57.

Convertendo int para double

De uma perspectiva Java, os tipos double e int também são compatíveis. Como a conversão de int para double é sobre a conversão de maior para menor, esse tipo de conversão chama maiúsculas e minúsculas implícitas ou ampliação. Você pode converter int para double em Java automaticamente, atribuindo o valor int a uma variável double. Vamos ter um exemplo de código de typecasting:

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);
   }
}
Aqui está a saída:
meus números inteiros são: 10, 2147483647 após typecasting/alargamento para dobrar: 10,0, 2,147483647E9
Notas: E9 aqui significa 109, é chamado de notação científica. Observe também que os números duplos geralmente são escritos com um ponto que separa a parte fracionária. se você declarar uma variável de double e colocar um valor nela, não é necessário fazer isso, mas na saída o número double sempre terá uma parte fracionária, mesmo que seja zero.

Convertendo int para double usando operação numérica neutra

Além disso, todas as operações numéricas em variáveis ​​de tipos diferentes em Java levam ao alargamento do tipo. Ou seja, o resultado da operação será de tipo mais amplo. Portanto, para converter de int para double, você pode usar a operação “neutra”. Por exemplo, multiplique um int por 1,0 (um número duplo) ou adicione 0,0 a um int. Aqui está um exemplo de typecasting:

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);
   }
}
A saída é:
7,0 5,0
A propósito, você pode converter para double não apenas int, mas todos os tipos primitivos numéricos. Aqui está a ordem de conversão possível do menor para o maior:
Byte -> Short -> Char -> Int -> Long -> Float -> Double
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION