public static void reversedArray(double testArray[])
{
    double lastNumber = 0;
    for (int counter1 = 0, counter2 = testArray.length - 1; counter1 < testArray.length; counter1++, counter2 \--)
    {
       lastNumber = testArray[counter2];
       testArray[counter1] = testArray[counter2];
       testArray[counter2] = lastNumber;
    }
}


这是反转数组的方法。该数组的长度为5。它正确显示前3个数字,但后2个数字错误。例如,我输入1,2,3,4,5,然后返回5,4,3,4,5

编辑:看起来我明白了,我取出了testArray.length作为for循环中的比较,并将其替换为counter2。

最佳答案

您正在覆盖数组中的数据。您需要一些临时位置来存储它。现在您应该可以自己修复方法。

下次考虑使用Collections.reverse(Arrays.asList(yourArray))而不是自己编写。

关于java - 反转数组的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22132598/

10-13 03:02