Conversão de tipos

6 respostas
MARCOS_ALEXANDRE

Quando vou setar um valor em uma propriedade que é do tipo Long preciso fazer a conversão de integer para long ?

Obrigado!

6 Respostas

Guilherme_Moreira

Que eu saiba não, se não houver perda de precisão no número, não tem porque não funcionar!

public class Teste{
        public static void main(String [] args){
                int x = 1;

                recebeLong(x);
        }

        private static void recebeLong(long l){
                System.out.println(l);
        }
}
diego2005

Quando o contêiner que for receber for maior você não precisa fazer a conversão (conversão implícita), mas quando é menor precisa (conversão explícita). Por exemplo:

byte b = 10;
int i = 10;
long l = 10;

i = b; // implícita
b = (byte) i; // explícita
l = b; // implícita
l = i; // implícita
i = (int) l; // explícita
MARCOS_ALEXANDRE

è!!! tb to estranhando mas to tomando erro …

MARCOS_ALEXANDRE

Quando pego uma variavel do tipo long e passo para o set da classe da certo, mas se eu passar um número por exemplo 1, da erro de tipo.

Guilherme_Moreira

Qual erro especificamento você tá recebendo?

Mantu

Só uma sugestão que as vezes funciona. Passe o valor seguido de uma letra “l”. Por exemplo, se quiser passar 127:

...
seuObjeto.set(127l);
...

Vê se isso resolve, ok?

Criado 26 de setembro de 2006
Ultima resposta 28 de set. de 2006
Respostas 6
Participantes 4