很简单啊,ArrayIndexOutofBoundsException是数组下标越界的错误。
数组元素 String类型的名为 args的数组 参数为args[0] args[1] args[2] args[3]... 如果你在cmd中运行的话可以直接在文件名后面加参数 那些参数就会传到args数组里。
这是要用命令行执行的,如果你是直接在myeclipse中右键执行的话是不行的 。
参考一下资料:
给你简单说下这个参数是怎么回事儿吧。首先你应该也知道的main方法是整个程序的入口方法,就是说整个程序一旦开始执行的话就会首先去找main方法。那么假设这么一种情况,写一个程序,输入2个字符串,然后让它在控制台直接输出,因为我们通过String[] args 可以直接向主方法中传值,所以可以写成
class Test
{
publicstatic void main(String[] args)
{
System.out.println(args[0]+" "+args[1]");
}
}
在运行这个程序的时候,在cmd中用javac命令编译,即javac Test.java然后用java命令执行,即java Test abc efg运行结果就是abc efg。这个说明了确实是在编译后通过外界直接向main方法中传值了,很多时候我们有必要向main方法中直接传值,初学的时候很少用到这个参数,很多情况下就是完全没有在用它,但是即便是没有用到,这个参数也不能不写,因为main方法就是规定这么写的
废话。你的数组变量args是空的啊。你需要在int a=Integer.parsInt(args[0]);前面加一句:
args={"1","23"};
输出24
运行的时候 给的 参数 太少了 ,没有 超过两个参数 ,数组就越界了
arg没有生命长度