给你一个IP4的地址,请转成十进制整数 (2021-03 腾讯-PCG-前端)
手撕算法: ip地址转整数 (2021-03 腾讯-TEG-后端)
输入描述:
输入
1 输入IP地址
2 输入10进制型的IP地址
输出描述:
输出
1 输出转换成10进制的IP地址
2 输出转换后的IP地址
示例1
输入
10.0.3.193
167969729
输出
167773121
10.3.3.193
例如,ip地址为10.0.3.193,把每段拆分成一个二进制形式组合起来为
00001010 00000000 00000011 11000001,
然后把这个二进制数转变成十进制整数就是167773121。
牛客的题解
链接:https://www.nowcoder.com/questionTerminal/66ca0e28f90c42a196afd78cc9c496ea?answerType=1&f=discussion
来源:牛客网
import java.util.*;
public class Main {
private final int N = 4;
public String convert(String str) {
// ipv4 -> int
if (str.contains(".")) {
String[] fields = str.split("\\.");
long result = 0;
for (int i = 0; i < N; i++) {
result = result * 256 + Integer.parseInt(fields[i]);