byte  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
rochribre
JavaBaby
[Avatar]

Membro desde: 11/12/2008 08:35:24
Mensagens: 89
Localização: Ourinhos-SP
Offline

Alguem saberia me dizer como faço para incluir uma variavel de valor inteiro em um byte.
Meu problema está na linha

endereco1[3] = valor; //Problema

onde não aceita o valor inteiro.




public class Teste_EnderecoIP {

public static void main(String args[]){


Integer valor = 0;


try{

for(int i=1;i<256;i++){

if(i>127){
valor = (256-i) * -1;
}else{
valor = i;
}


byte endereco1[] = new byte[4];
endereco1[0] = 10;
endereco1[1] = -45;
endereco1[2] = 2;
endereco1[3] = valor; //Problema

InetAddress endereco2 = InetAddress.getByAddress(endereco1);

System.out.print("\nEndereço 2:"+ endereco2.getHostName());

}//Fim do For

}catch(UnknownHostException exc){
System.err.println(exc.getMessage());
}

}
[Email] [MSN]
robinsonbsilva
GUJ Ranger
[Avatar]

Membro desde: 27/10/2004 12:01:50
Mensagens: 761
Offline

Cast nele!!!

Sun Certified Java Programmer Standard Edition 6.0
[MSN]
douglastc
JavaTeenager

Membro desde: 16/08/2007 04:10:48
Mensagens: 194
Localização: Campo Grande MS
Offline

int i = 10;
byte c = (byte) i;

Um exemplo de cast.





[Yahoo!] [ICQ]
cvinicius
JavaEvangelist

Membro desde: 18/04/2008 16:35:05
Mensagens: 433
Localização: SP
Offline

Bom dia

Então faça como o robinson falou acima, use a tecnica de cast, mas lembre-se caso o valor seja superior as faixas permitidas em um byte, você terá perda de valores.

Faixa que cabe em um byte: -128 a 127

endereco1[3] = (byte) valor;

Falou.

This message was edited 1 time. Last update was at 27/04/2009 08:37:36


Sun Certified Java Programmer 5
Oracle Certified Associate, Java SE
Oracle Certified Professional Java EE 5 Web Component Developer
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team