题解 | #合法IP# JAVA最不费脑子的办法
合法IP
http://www.nowcoder.com/practice/995b8a548827494699dc38c3e2a54ee9
描述
现在IPV4下用一个32位无符号整数来表示,一般用点分方式来显示,点将IP地址分成4个部分,每个部分为8位,表示成一个无符号整数(因此不需要用正号出现),如10.137.17.1,是我们非常熟悉的IP地址,一个IP地址串中没有空格出现(因为要表示成一个32数字)。
现在需要你用程序来判断IP是否合法。
注意本题有多组样例输入。
输入描述:
输入一个ip地址,保证是xx.xx.xx.xx的形式(xx为整数)
输出描述:
返回判断的结果YES or NO
解答思路
已知xx肯定是整数,所以不用担心判断的输入case。
如果不要校验的话,就需要校验,这个是否满足IP输入的格式了,用正则是高级的了,我们用最简单的方法。
1.字符串分割
2.字符串转整型
坑点
split 如果使用. 编译会通不过,要使用\.
public String judgeIP(String ipstr){ int count = 0; String[] nums = ipstr.split("\\."); for(String num:nums){ int temp = Integer.parseInt(num); if (temp >= 0 && temp <= 255){ continue; } else{ return "NO"; } } return "YES"; }