Byte

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;
            [b][color=red]endereco1[3] = valor; //Problema[/color][/b]

            InetAddress endereco2 = InetAddress.getByAddress(endereco1);

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

        }//Fim do For

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

}

Cast nele!!!
:slight_smile:

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

Um exemplo de cast.

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.