Casting

Primeiramente queria agradecer o Franklin pela ajuda e iniciativa do site e dizer que foi muito bom te-los encontrado na net. Acho que encontrei esse site tarde demais, ja que vou fazer a prova de certificação amanha…

Queria saber se alguem pode me dizer porque o seguinte código compila (SEM CASTING) :

class MyClass { public static void main(String []args) { final int i = 100; byte b = i; System.out.println(b); } }

e o seguinte código , não compila :

class MyClass { public static void main(String []args) { final double i = 100; float b = i; System.out.println(b); } }

OBRIGADO !

Estou na correria, só para colocar fogo na conversa, seria por causa do float…?

o 2º nao compila pq logicamente vc não pode converter um double para um float

o 1º compila pq um byte pode guardar um int, desde que este fique entre (-128 até +127) sabe?

final int i = 127; // isto compila! 127 cabe dentro de um byte
byte b = i;

final int i = 128; // isto NAO compila! 128 maior que um byte
byte b = i;

byte, char, pode receber “int” desde que o tamanho esteja dentro de sua capacidades :smiley:

ricardolecheta,

Mandou bem!!!

Até mais,

Ricardo Serra
www.open.org.br

Valeu ricjava e Ricardolecheta !

Ainda bem que na prova de hoje caiu pouca coisa de Casting…
Caiu muita coisa de Thread, construtores, override e overload de métodos.

Mas consegui passar com 65 % …
Se alguem quiser mais detalhes da prova, pode me contactar pelo rodmosq@hotmail.com

proximo passo, J2EE… Muito Obrigado !

MosquitoJavanes,

Parabéns!

Ficamos felizes com o seu resultado. Vê se não vai deixar o nosso fórum para 2º plano! Estamos precisando de pessoas para nos ajudar, e você será muito bem vindo!

Se você puder enviar algo sobre a prova que vc fez seria legal! Vê se dá para locar aqui no fórum, ou como um artigo, beleza?

Até mais,

Ricardo Serra
www.open.org.br

parabéns ! :smiley: