需要注意的点:
contains方法的使用
split方法中的dot“.”应该要使用转义才行
Integer.parseInt返回的是int,Integer.valueOf返回的是Integer
package lanqiao;
public class Cvte_1 {
public static void main(String[] args) {
Cvte_1 test=new Cvte_1();
String str="11.111.1.001";
String result=test.check(str);
System.out.println(result);
}
public String check(String str){
if(str.contains(".")){
int count=0;
String[] arr=str.split("\\.");
for(int i=0;i<arr.length;i++){
if((Integer.parseInt(arr[i])>=0)&& (Integer.parseInt(arr[i])<=255)&& (arr[i].charAt(0)!='0')){
count++;
}
}
if(count==arr.length){
return "IPv4";
}
}else if(str.contains(":")){
String[] arr=str.split(":");
int count=0;
if(arr.length==8){
for(int i=0;i<arr.length;i++){
if(arr[i].length()>0 && arr[i].length()<=4){
count++;
}
}
if(count==arr.length){
return "IPv6";
}
}
}
return "Neither";
}
}