当前位置: 代码迷 >> Java相关 >> 关于异常的问题
  详细解决方案

关于异常的问题

热度:252   发布时间:2007-06-05 15:42:40.0
关于异常的问题

程序代码:
public class Message
{
public static void main(String[] args){

if(args[0].equals(\"-h\"))
System.out.println(\"Hello\");
else if(args[0].equals(\"-g\"))
System.out.println(\"Goodbye,\");
for(int i=1;i<args.length;i++)
System.out.println(\" \"+args[i]);
System.out.println( \"!\");
}

}



运行结果Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0

这个该怎么改啊? 我对异常搞不太懂啊


----------------解决方案--------------------------------------------------------
数组越界!
----------------解决方案--------------------------------------------------------

args是存储命令行参数的数组,什么也没有输入,故args是空数组!用args[0]当然越界了?


----------------解决方案--------------------------------------------------------

程序是对的,只是你运行这个的时候要向里面传参数。
如果在CMD下面运行就要
java Message -h


----------------解决方案--------------------------------------------------------
2楼正解,3楼是demo,哈哈
----------------解决方案--------------------------------------------------------

请问应该怎么修改呢?


----------------解决方案--------------------------------------------------------
java Message -h

这个就可以了,不要直接取args,它可能长度为0
----------------解决方案--------------------------------------------------------

哦知道了,谢谢了ls的几位

原来在dos 环境下就要输 java Message -h


----------------解决方案--------------------------------------------------------
  相关解决方案