java的一个错误,运行说:Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0 at IP

//packagecn;publicclassIPParse{/*获取IP地址类型*/publicStringgetIPType(Stringip){if(isIP(ip... //package cn;
public class IPParse{
/*获取IP地址类型*/
public String getIPType(String ip){
if(isIP(ip)){//是IP地址
int ipArray[]=getNumArray(ip);
int firtArrayNum=ipArray[0];
if(firtArrayNum>=0 && firtArrayNum<128 ) return ip+"是A类IP地址";
else if(firtArrayNum>=128 && firtArrayNum<192 ) return ip+"是B类IP地址";
else return ip+"是C类IP地址";
}
else return ip+"不是IP地址";
}
/*判断是否为IP地址*/
public boolean isIP(String ip){ //判断一个字符串是否为IP地址
boolean isPoint=ip.contains("."); //是否含有点“.”
if(isPoint){//是含有"."的数字字符串
int ipSegent[]=this.getNumArray(ip);//获取以“.”分割后的数字字符串对应的整数数组
int length= ipSegent.length;
if(ipSegent[0]==65535) {//输入的不是数字字符串
return false;}
else if(length!=4 && length!=6) {//输入的数字串不符合IPV4、6的位数要求
return false;}
else {//符合IP位数要求
int max=0;
int min=0;
for(int i=0;i<length;i++){
if(i==0) { //if 2 start
max=ipSegent[0];
min=max;
} //if end
else{
if(ipSegent[i]>max) max=ipSegent[i];
if(ipSegent[i]<min) min=ipSegent[i];
}//else end
}//for end
if(max>255 || min<0) return false; //不满足各为整数的取值范围
else return true; //是IP地址
}
}
else return false;//不含有点“.”的字符串
}
/*获得一个含有点“.”分割的数字字符串对应的数字数组*/
public int[] getNumArray(String strNum){ //将一个含有"."的数字字符串从“.”分割为数字数组并返回
String numSegent[]=strNum.split("\\.");
int length= numSegent.length;
int [] numArray=new int[length];
for(int i=0;i<length;i++){
try{
numArray[i]=new Integer(numSegent[i]).intValue();
}catch(NumberFormatException e){
int [] error={65535};
return error;}
}
return numArray;
}

public static void main(String[] args){
IPParse ipParse=new IPParse();//创建IP地址类型解析对象
String ip=args[0]; //获取主函数参数
System.out.println(ipParse.getIPType(ip)); //输出输入的字符串的解析结果
}
}
展开
 我来答
夜冥明
2012-05-09 · 超过21用户采纳过TA的回答
知道答主
回答量:104
采纳率:0%
帮助的人:27.8万
展开全部
设置断点调试吧 这个是程序而以 一步一步很容易找到问题 还有抛的什么错误?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浑越泽y6
2012-05-09
知道答主
回答量:11
采纳率:0%
帮助的人:7.1万
展开全部
熬啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式