-1
이것은 분명 할 수도 있지만 실종입니다. IP 주소를 얻기 위해 0xff와 AND를 수행해야하는 이유는 무엇입니까? 내가 정확히 같은 일을 볼 수있는 방법을 수행하고 0xff와 비트를 동일하게 남겨 두어야합니다. 그러면 AND 연산을 수행하지 않으면 왜 작동하지 않습니까?IP 주소를 인쇄하려면 AND가 필요합니다.
package com.inet.ex1;
import java.net.InetAddress;
import java.net.UnknownHostException;
public class ShowIP {
public static void main(String[] args) {
InetAddress host;
try {
host = InetAddress.getLocalHost();
byte[] ip = host.getAddress();
for (int i = 0; i < ip.length; i++) {
if (i == 0) System.out.print(ip[i] & 0xff);
else System.out.print("." + (ip[i] & 0xff));
}
} catch (UnknownHostException e) {
System.out.println(e);
}
}
}
"작동하지 않음"은 무엇을 의미합니까? 어떤 결과 또는 오류가 발생하며 예상되는 결과는 무엇입니까? – dunni
죄송 합니다만 작동하지만 음수를 표시합니다! – vanmarcke
당신이 묘사 한 바에 따르면, 진짜 질문은 자바에서'& 0xff'가하는 것처럼 보입니다. 표시된 복제본이 이에 응답해야합니다. 내가 당신을 오해했거나 그 질문이 당신의 질문에 대답하지 못했다면, @yshavit로 저를 언급하십시오. 다시 열 수 있습니다. 그러나이 경우, 당신이 찾고있는 다른 정보를 분명히하십시오. – yshavit