Double e Cast para Byte

Olá pessoal…

Alguem saberia me explicar:

O resultado desse código é Infinity (até ai tudo bem):

double a = 10.0; double a = 0.0; double c = (a / b); System.out.println("Valor = " + c);

Mas se eu fizer cast pra byte, ele printa “-1”, pq???

double a = 10.0; double b = 0.0; double c = (byte) (a / b); System.out.println("Valor = " + c);

Obrigado!!! :lol:

Por causa do range que o byte tem (assim como qualquer variavel). a diferença é que byte não aceita casas decimais, sendo assim impossível de ser infinito.