Atribuição

4 respostas
anderson.bonavides

Alguêm poderia me dizer pq isso não é possível?

float f = 2.0;

Só é possivel com cast. Não entendi pq!

4 Respostas

davidbuzatto

O literal 2.0 é por padrão um double em Java.
Como um double tem precisão maior que um float, há a necessidade do cast.

Para fazer com que isso seja possível vc precisa adicionar o sufixo F no literal. Pode ser tanto minúsculo como maiúsculo, mas as boas práticas aconselham a usar maiúsculo.

float f = 2.0F;

Até mais!

anderson.bonavides

davidbuzatto

Vlw pela força. Ficou exclarecido para mim.

Raff

davidbuzatto:
O literal 2.0 é por padrão um double em Java.
Como um double tem precisão maior que um float, há a necessidade do cast.

Para fazer com que isso seja possível vc precisa adicionar o sufixo F no literal. Pode ser tanto minúsculo como maiúsculo, mas as boas práticas aconselham a usar maiúsculo.

float f = 2.0F;

Até mais!


falow tudo !!!

LPJava

vc nao pode colocar do maior no menor sem cast.
Voce pode colocar o melao em uma caixa de maça? Não o melao é maior que a maça, agora se vc fatiar o melao(cast) vc pode colocar ele dentro da caixa de maça.
Agora vc pode colocar a maça dentro de uma caixa de melao sem precisar fatiar(cast) a maça.

uhahua é um exemplo meio ridiculo… mas eu usei bastante para entender… essa parte de cast.

entao em java: vc nao pode colocar um double dentro float sem cast.

  • nao pode colocar um long dentro de um int.

:smiley:

Criado 6 de fevereiro de 2008
Ultima resposta 7 de fev. de 2008
Respostas 4
Participantes 4