Ip

Pessoal estou tentando pegar o ip da maquina local por este codigo:

[code]
import java.net.*;

public class asdf{
public static void main(String args[]){
try{
InetAddress addr = InetAddress.getLocalHost();
byte []a = addr.getAddress();

  for(int i=0; i<a.length; i++){
    System.out.print(a[i]);
  }

}
catch(UnknownHostException e){
  System.out.println("Erro");
}

}
}[/code]

Mas o resultado deste codigo são quatro numeros negativos…
O que esta errado?

voce tem que converter para um inteiro tirando o sinal
tenta usar no print

System.out.print(a[i] & 0xFF);

cara valeu, funcionou perfeitamente mas eu não entendi o que o “& 0xFF” fez para funcionar o codigo…