如何在Java中反转int数组?
我正在尝试在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;
}
这是怎么回事?
我正在尝试在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;
}
按照您的方式,您将每个元素交换两次,因此结果与初始列表相同。
使用Commons.Lang,您可以简单地使用
ArrayUtils.reverse(int[] array)
大多数时候,当它们处理您的问题时,坚持使用已经过单元测试和用户测试的易于获得的库会更快,更安全。