Bom…já que essa seção é para iniciantes aí vai a minha pergunta que se refere a tipos primitivos da linguagem Java. Números…para ser mais exato.
Tenho uma classe círculo que tem o método move(float dx, float dy).
Pq qdo passo na chamada de métodos ac.move(-1.0,-1.5) dá erro e se eu mudo para double as variáveis dx e dy, a classe funciona.
Gostaria que me explicassem essa diferença entre int, long, float e double. Achava que os dois primeiros eram inteiros, com a única diferença no tamanho e os dois últimos tipos de números reais… Porém com esse erro fiquei meio na dúvida.
Valeu 
A diferença é esta mesmo
Tipo primitivos inteiros:
byte - 8 bits - de -128 a 127
short - 16 bits - de -32768 a 32767
int é um inteiro curto - tamanho 32bits - de -2147483648 a 2147483647
long inteiro longo - tamanho 64 bits - de -9223372036854775808 a …
tipos primitivos flutuantes:
float um numero de ponto flutuante de precisão simples e 32 bits
double um numero real longo é armazenado em 64 bits e é um numero de precisão dupla!
espero que tenha ficado claro.
Entendi Diogo…
Mas a dúvidas são:
[list] - posso representar números reais no tipo float?Como?
- Pq -1.0 não é considerado float e sim double[/list]
Blz HGK_Blade?
Está dúvida seria uma boa pergunta para cair na prova de Certificação…
É o seguinte, como vc disse vc tem o método move(float dx, float dy) . E vc está chamando este método ac.move(-1.0,-1.5). Neste caso irá dar erro mesmo. Porque? Imagine o seguinte, quando vc passa um valor literal (neste caso -1.0 e -1.5) poderia ser tanto float como double, concorda. Por isso Java padroniza que todos valores de constantes literais de ponto flutuante são double. E como vc esta passando -1.0 e -1.5 (que são constante literais) para um método de parâmetros float ele irá dar erro, porque um valor double é maior que float e iria perder precisão. O que vc pode fazer é uma conversão explicita assim: ac.move((float)-1.0,(float)-1.5), onde vc está dissendo - “Eu me comprometo em fazer a conversão, mesmo que eu perda precisão”, que neste caso não irá ocorrer, porque -1.0 e -1.5 pode ser representado em um float.
blz?
Ótimo JavaTeco 
Esclareceu as minhas dúvidas.
Por isso q eu estou viciado no PJ. Eles respondem tudo hehehehehe 
Só lembrando que este método que o JavaTeco usou se chama o famoso Cast!
Um abraço!
[quote=“HGK_Blade”]Ótimo JavaTeco 
Esclareceu as minhas dúvidas.
Por isso q eu estou viciado no PJ. Eles respondem tudo hehehehehe :P[/quote]
Pessoal, não há necessidade de fazer o cast (conversão) utilizando (float). É só colocar um f no final do número que a linguagem já reconhece o tipo numérico como float. Assim ó: -304.374f. Esse f no final é a representação de números float.
Att
[quote=“morcegao”]Pessoal, não há necessidade de fazer o cast (conversão) utilizando (float). É só colocar um f no final do número que a linguagem já reconhece o tipo numérico como float. Assim ó: -304.374f. Esse f no final é a representação de números float.
Att[/quote]
Realmente…tb dá certo 
Minha maior dúvida era pq ele não aceitava float, já que float tb pode trabalhar com números reais.
E pelo q entendi é q o padrão usado é o double pela sua precisão, então qdo quisermos usar o float devemos explicitar com o f no final ou fazer o type cast.
[quote=“morcegao”]Pessoal, não há necessidade de fazer o cast (conversão) utilizando (float). É só colocar um f no final do número que a linguagem já reconhece o tipo numérico como float. Assim ó: -304.374f. Esse f no final é a representação de números float.
Att[/quote]
Realmente…tb dá certo 
Minha maior dúvida era pq ele não aceitava float, já que float tb pode trabalhar com números reais.
E pelo q entendi é q o padrão usado é o double pela sua precisão, então qdo quisermos usar o float devemos explicitar com o f no final ou fazer o type cast.
[quote=“morcegao”]Pessoal, não há necessidade de fazer o cast (conversão) utilizando (float). É só colocar um f no final do número que a linguagem já reconhece o tipo numérico como float. Assim ó: -304.374f. Esse f no final é a representação de números float.
Att[/quote]
Como eu sempre falo: “Existem 1000 maneiras de fazer Neston!”
