题解 | #合法IP#

合法IP

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

import java.util.Scanner;
//自己做了知道为什么通过率这么低了,各种条件要是没有用例,真是容易遗漏条件的
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String a = in.nextLine();
            System.out.println(isVaild(a));
        }
        in.close();
    }
    private static String isVaild(String str) {
        char[] ac = str.toCharArray();
        for(char c : ac){
           if(!Character.isDigit(c) && c!='.'){
        	return "NO";
            }
        }
        String[] arr = str.split("\\.");
        if (arr.length != 4) {
            return "NO";
        }
        for (int i = 0; i < arr.length; i++) {
            int a = 0;
            try {
                if (arr[i].equals(null)) {
                    return "NO";
                } else if (arr[i].length()>1 && arr[i].charAt(0) == '0') {
                    return "NO";
                }
                a = Integer.parseInt(arr[i]);
            } catch (Exception e) {
                return "NO";
            }
            if (a < 0 || a > 255) {
                return "NO";
            }
        }
        return "YES";
    }
}

全部评论

相关推荐

10-07 20:48
门头沟学院 Java
听说改名就会有offer:可能是实习上着班想到后面还要回学校给导师做牛马,看着身边都是21-25的年纪,突然emo了了
点赞 评论 收藏
分享
10-04 17:25
门头沟学院 Java
snqing:Java已经饱和了,根本不缺人。随便一个2000工资的都200人起投递
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务