0

我目前正在尝试获取数组的元素并在 Java 中反转其顺序。为什么我不能通过使用 for 循环向下计数而不更改数组中元素的实际顺序来打印数组的元素?

private void printArray(int[] array) {
    for (int i = array.length; i >= 0; i--){
        println(array[i]);
    }
}
4

2 回答 2

7

数组索引从 开始0和结束array.length - 1。在这里,您会得到一个,ArrayIndexOutOfBOundsException因为您的第一次读取超出了数组的末尾 ( int i = array.length;)。

做:

for (int i = array.length - 1; i >= 0; i--)
    println(array[i]);
于 2013-01-20T06:49:36.423 回答
1

尝试

for (int i = array.length - 1; -1 != i; --i){

由于索引从 0 开始

于 2013-01-20T06:49:27.513 回答