题解 | #整数与IP地址间的转换#
整数与IP地址间的转换
https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String ip = in.nextLine();
long num = in.nextLong();
String arr[] = ip.split("\\.");
long sum = 0l;
// ip转数字
for (int i = 0; i < arr.length; i++) {
sum = sum << 8;
sum = sum + Integer.valueOf(arr[i]);
}
System.out.println(sum);
// 数字转ip
sum = num;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 4; i++) {
long gap = sum & 255;
sum = sum >> 8;
String ipStr = (i != 3 ? "." : "") + gap;
sb.insert(0,ipStr);
}
System.out.println(sb.toString());
}
}
查看9道真题和解析