我正在尝试反转Java中的int数组。

此方法不会反转数组。

for(int i = 0; i < validData.length; i++)
{
    int temp = validData[i];
    validData[i] = validData[validData.length - i - 1];
    validData[validData.length - i - 1] = temp;
}

怎么了

最佳答案

要反转一个int数组,可以交换项,直到达到中点为止,如下所示:

for(int i = 0; i < validData.length / 2; i++)
{
    int temp = validData[i];
    validData[i] = validData[validData.length - i - 1];
    validData[validData.length - i - 1] = temp;
}

这样,您将每个元素交换两次,因此结果与初始列表相同。

09-11 18:09