Analise o código java abaixo:
Após analisar o trecho de código java, assinale a alternativa que melhor explica seu funcionamento:
Quais abaixo estão corretas?

Mesmo as variáveis sendo de tipos primitivos diferentes, como à variável double foi atribuído um valor que também pode ser armazenado numa variável do tipo int, o código compila e funciona corretamente.
Para um tipo primitivo int, existe a atribuição de casting direto do tipo double para esta, dessa forma o código compila e funciona corretamente.
Apesar de ter sido atribuído à variável double um valor que pode ser armazenado à variável int, não existe casting direto de double para int e o compilador não pode saber em tempo de execução se é um valor válido ou não, dessa forma o código não compila e não funciona corretamente.
Um valor double não pode ser atribuído a uma variável int, pois não existe casting direto entre estas, porém, como foi atribuído ao double um valor que poderia ter sido atribuído à variável int, o código compila, porém, no momento da execução ocorrerá um erro.

1

Respostas

2014-08-05T22:57:23-03:00
Apesar de ter sido atribuído à variável double um valor que pode ser armazenado à variável int, não existe casting direto de double para int e o compilador não pode saber em tempo de execução se é um valor válido ou não, dessa forma o código não compila e não funciona corretamente.