import java.util.*;
public class Solution {
/**
* 验证IP地址
* @param IP string字符串 一个IP地址字符串
* @return string字符串
*/
public String solve (String IP) {
// write code here
if(isIPv4(IP)){
return "IPv4";
}else if(isIPv6(IP)){
return "IPv6";
}else{
return "Neither";
}
}
public boolean isIPv4(String IP){
String[] ss = IP.split("\\.");
if(ss.length != 4){
return false;
}
for(int i = 0; i < 4; i++){
int num = 0;
if(ss[i].charAt(0) == '0'){
return false;
}
for(int j = 0; j < ss[i].length(); j++){
char c = ss[i].charAt(j);
if(c < '0' || c > '9')
return false;
num = (c - '0') + num * 10;
if(num < 0 || num > 255)
return false;
}
}
return true;
}
public boolean isIPv6(String IP){
String[] ss = IP.split(":", -1);
if(ss.length != 8){
return false;
}
for(int i = 0; i < 8; i++){
if(ss[i].length() == 0 || ss[i].length() > 4){
return false;
}
for(int j = 0; j < ss[i].length(); j++){
char c = ss[i].charAt(j);
boolean sign = (c <= '9' && c >= '0') || (c <= 'f' && c >= 'a') || (c <= 'F' && c >= 'A');
if(!sign)
return false;
}
}
return true;
}
}
牛客-TOP101-BM85
最新推荐文章于 2024-10-05 12:07:50 发布