线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:4位于JT1.main(JT1.java:11)
应该是线程“main”java.lang.ArrayIndexOutOfBoundsException中的异常:4位于JT1.main(JT1.java:11),java,arrays,args,Java,Arrays,Args,应该是 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4 at JT1.main(JT1.java:11) 您正在尝试获取CopyArgs[5],但您没有该索引 尝试将第二个for循环更改为: 使用System.arraycopy复制阵列 定义与原始文件长度相同的副本: System.out.println(Arrays.toString(CopyArgs)); 使用数组的长度而不是固定值: Stri
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at JT1.main(JT1.java:11)
您正在尝试获取CopyArgs[5],但您没有该索引
尝试将第二个for循环更改为:
使用System.arraycopy复制阵列
定义与原始文件长度相同的副本:
System.out.println(Arrays.toString(CopyArgs));
使用数组的长度而不是固定值:
String[] copyArgs[] = new String[args.length];
System.arraycopy( args, 0, copyArgs, 0, args.length );
顺便说一句:注意Java命名约定。变量名称应以小写字符开头。copyOfargs,args.length是一种更容易调用的方法。谢谢,这就是解决方案:
for (int i = 0; i < CopyArgs.length; i++) {
System.out.println(CopyArgs[i]);
}
System.out.println(Arrays.toString(CopyArgs));
String[] copyArgs[] = new String[args.length];
System.arraycopy( args, 0, copyArgs, 0, args.length );
for(int i = 0; i < copyArgs.length;i++)
System.out.println(copyArgs[i]);