小编a12*_*c34的帖子

打印阵列/反向阵列

所以我对打印数组有疑问.这些方法从文件创建的数组中接收数据.由于文件中包含的整数很多,因此每行输出应为10个整数.假设文件包含{0,1,2,3,4,5},输出应为:

0   1   2   3   4   5
Run Code Online (Sandbox Code Playgroud)

第一种方法完全正常.第二种方法返回一个错误,我将在下面包含这个错误.任何人都可以帮我弄清楚什么是错的?我试过谷歌搜索但仍然不明白.这是代码:

public static void printArray(int[] array){
            System.out.println("Printing array: ");
            for (int i = 1; i<array.length+1; i++){
                    System.out.printf("%7d", array[i-1]);
                    if (i%10==0){
                            System.out.println();
                    }

            }
            System.out.println();
}
public static void reverseArray(int[] array){
            System.out.println("Printing reversed array: ");
            int a=0;
            for (int i = array.length; i>-1; i--){
                    System.out.printf("%7d", array[i]);
                    a++;
                    if (a%10==0){
                            System.out.println();
                    }
            }
            System.out.println();
}
Run Code Online (Sandbox Code Playgroud)

这是错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
    at Paniagua_ArrayProcessing.reverseArray(Paniagua_ArrayProcessing.java:49)
    at Paniagua_ArrayProcessing.main(Paniagua_ArrayProcessing.java:8)
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!希望这只是一个简单的问题.

编辑:这是在java顺便说一句.

java printing arrays indexoutofboundsexception

5
推荐指数
1
解决办法
558
查看次数