CodeGym /Blogue Java /Random-PT /Java palavra-chave dupla
John Squirrels
Nível 41
San Francisco

Java palavra-chave dupla

Publicado no grupo Random-PT
A palavra-chave double do Java , como em qualquer outra linguagem, indica um formato de computador para representar um número de ponto flutuante, ocupando 64 bits, ou 8 bytes, na memória. Neste artigo vamos falar sobre double e ver alguns exemplos.

Ponto flutuante e computação: uma breve descrição matemática

Números fracionários são fixos ou ponto flutuante. A primeira opção pode ser representada como uma fração regular, onde o numerador (o próprio número) e o denominador (seu fator de escala) serão inteiros. Por exemplo, o número 2,7 é 27 com um fator de escala de 10, 3,14 - 314 com um fator de 100. No entanto, essa abordagem não é muito precisa do ponto de vista computacional, portanto, eles geralmente usam representação de ponto flutuante. Na computação, a aritmética de ponto flutuante é uma representação aritmética especial de números reais como uma aproximação para suportar uma troca entre alcance e precisão. O formato principal para representar números de ponto flutuante em Java é chamado float. Seu nome vem do ponto flutuante. Float é de 32 bits, dos quais 1 bit é bit assinado, 8 bits para expoente e 23 bits para significando. Seu alcance é de ±3. 40282347E + 38F ou seja, 6-7 dígitos significativos. O nome double vem de double float. Otipo double é duas vezes maior que float : 8 bytes versus 4. Também é chamado de número real de precisão dupla. Dos 64 bits reservados para um número duplo, 1 é bit assinado, 11 bits são para expoente e 52 bits são para significando. A fração dupla Java armazena números no intervalo ±1,79769313486231570E + 308, ou seja, 15-16 dígitos significativos. Double é um formato mais preciso. Portanto, se você precisar armazenar números realmente grandes, é uma boa ideia preferir double over float . A propósito, métodos matemáticos como sqrt, sin ou cos e muitos outros retornam valores duplos. No entanto, você deve pagar pela precisão dupla com memória.

Criando uma variável dupla

O tipo double é usado para armazenar números reais. Para criar uma variável no código que será capaz de armazenar números reais, você precisa usar o comando:

double name;
Onde nome é o nome da variável.

double myPrice;  //here we create a variable called myPrice
double action; //and here -- action. 
Você também pode usar atalhos para criar múltiplas variáveis ​​do tipo double :

double name1, name2, name3;

Exemplos de palavras-chave duplas em Java

Vamos dar alguns exemplos de uso da palavra-chave double do Java para criar uma variável.

double myPrice = 5.0;
double height = 180;
double x = 7.1, y = 3.0;
Aqui na variável myPrice temos o valor 5.0, na variável height — 180, em x colocamos o valor 7.1, e 3.0 em y .

Dobrar como um número inteiro

Em Java, variáveis ​​duplas podem receber números reais e inteiros. Ao atribuir números inteiros, eles são simplesmente convertidos em números reais. Embora às vezes seja possível uma ligeira perda de precisão.

double height = 180;
int k = 2; 
int i = 5; 
double myDouble = k*i;
Na verdade, a variável altura armazena o número 180,0 e a variável myDouble armazena o número 10,0.

Interação dupla e inteira

Além disso, se um inteiro e um número real estiverem envolvidos em alguma expressão, o inteiro é primeiro convertido em um número real e só então interage com outro número real.

public class DoubleDemo {
   public static void main(String[] args) {
       int k = 2;
       double myDouble1 = 5;
       double myDouble = k*7.0;
       System.out.println(myDouble1);
       System.out.println(k*myDouble1);
       System.out.println(myDouble);
   }
}
Neste exemplo, a saída será:
5,0 10,0 14,0
Mesmo que o número myDouble1 seja denotado como 5 e não 5.0, Java vê esse número como um double , então ele realmente se parece com 5.0. Se multiplicarmos int e double, sempre obtemos um double , mesmo que de fato esse número seja um inteiro. Podemos atribuir variáveis ​​do tipo double a variáveis ​​do tipo int . Para fazer isso, você precisa fazer uma conversão de tipo explícita. Claro, a parte fracionária será descartada, o número será truncado para um número inteiro menor.

public class DoubleDemo {
   public static void main(String[] args) {
       double x = 57.789;
       int almostX;
       almostX = (int)x;
       System.out.println(almostX);
   }
}
A saída é:
57
Finalmente, vamos falar sobre a divisão. Esta é a coisa mais interessante. Você já deve ter se deparado com o fato de que, se dividirmos dois números inteiros, como resultado da divisão, obteremos um número inteiro, mesmo que não sejam divisíveis entre si:

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7/2;
       System.out.println(myDouble);
   }
}
O resultado é:
3.0
Isso ocorre porque a máquina Java primeiro divide dois inteiros (e obtém 3) e, em seguida, armazena esse valor em uma variável do tipo double e obtém 3,0 como resultado. Para obter não inteiro, mas a divisão usual, você precisa trapacear. Por exemplo, escreva um dos números como um número real (então toda a expressão é automaticamente convertida em real). Se trabalharmos com variáveis ​​do tipo inteiro, então elas podem ser multiplicadas por 1,0. Isso não alterará o valor, mas alterará o tipo da variável de int para double .

public class DoubleDemo {
   public static void main(String[] args) {
       double myDouble = 7.0/2;
       int x = 5;
       int y = 2;
       System.out.println(myDouble);
       System.out.println(x*1.0/y);
   }
}
A saída é:
3,5 2,5
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION