题解 | #整数与IP地址间的转换#

整数与IP地址间的转换

https://www.nowcoder.com/practice/66ca0e28f90c42a196afd78cc9c496ea

import java.util.ArrayList;
import java.util.Scanner;

/**
 * @author ChrisPeng
 * @date 2023/2/2 17:41
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            String ipA = scanner.nextLine();
            long ipB = scanner.nextLong();
            String[] split = ipA.split("\\.");
            long digitIP = 0;
            for (int i = 0; i < split.length; i++) {
                digitIP += Math.pow(2, 8 * (3 - i)) * Integer.parseInt(split[i]);
            }
            //将十进制转换为ip地址:点分十进制
            StringBuilder sb = new StringBuilder();
            ArrayList<Integer> list = new ArrayList<>();
            while (ipB > 0) {
                int temp = (int) (ipB % 256);
                ipB /= 256;
                list.add(temp);
            }
            sb.append(list.get(3)).append(".")
                    .append(list.get(2)).append(".")
                    .append(list.get(1)).append(".")
                    .append(list.get(0));
            System.out.println(digitIP);
            System.out.println(sb.toString());
        }
    }
}

全部评论

相关推荐

冲芭芭拉鸭:你这图还挺新,偷了。
投递美团等公司10个岗位
点赞 评论 收藏
分享
头像 会员标识
11-27 17:08
已编辑
牛客_产品运营部_私域运营
腾讯 普通offer 24k~26k * 15,年包在36w~39w左右。
点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务