题解 | #合法IP#

合法IP

https://www.nowcoder.com/practice/995b8a548827494699dc38c3e2a54ee9

import java.util.Arrays;
import java.util.Scanner;

/**
 * HJ90 合法IP
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            String str = scanner.nextLine();
            String[] input = str.split("\\.");
            String reslut = "YES";

            if (input.length == 4) {
                for (String ele : input) {
                    // 必须是数字
                    for (Character ch : ele.toCharArray()) {
                        if (!Character.isDigit(ch)) {
                            reslut = "NO";
                            break;
                        }
                    }
                    // 字串长度必须大于0小于3,防止转int越界
                    if (ele.length() == 0 || ele.length() > 3) {
                        reslut = "NO";
                        break;
                    }
                    // 大小必须在【0,255)区间内
                    if (Integer.parseInt(ele) < 0 || Integer.parseInt(ele) > 255) {
                        reslut = "NO";
                        break;
                    }
                    // 除了0以外,0开头的数字非法
                    if (ele.charAt(0) == '0' && ele.length() != 1) {
                        reslut = "NO";
                        break;
                    }
                }
            } else {
                reslut = "NO";
            }
            System.out.println(reslut);
        }
    }
}

全部评论

相关推荐

牛客87317764...:然后客户端边学边投,学个1个月投不进去都是正常的,这玩意非常看运气
投递快手等公司9个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务