如何使用reverse方法反转ArrayList的所有元素?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用reverse方法反转ArrayList的所有元素?相关的知识,希望对你有一定的参考价值。

我必须创建一个可以反转ArrayList的所有元素的方法...例如,如果我的列表有<12 1 34 56 43>元素。然后它应该反转整个列表。 <43 56 34 1 12>。我尝试过这种方法,但它不起作用。这是方法

public void reverse() { 
int size=0;     
for (int i = 0, j = size - 1; i < size && j >= 0; i++, j--)     
{         
int temp = j;         
j = i;         
i = temp;         
}          
}

当我调用这个方法list.reverse()时。它不会反转列表。任何人都可以帮助我!

答案

您的代码处理索引但不处理索引的实际元素。另请注意,如果j <i,您正在进行两次反转,因此不会产生任何影响。

public void reverse(List<Integer> list) { 
  int size=list.size();     
  for (int i = 0, j = size - 1; i < size && j >= 0 && i <= j; /** i must be smaller. */ i++, j--)     
  {         
    int temp = list.get(j);         
    list.set(j, list.get(i));         
    list.set(i,temp);         
  }          
}
另一答案

使用ArrayList对象,然后在构建数组后,您可以运行以下内容来反转内容:

Collections.reverse(your ArrayList Here);
另一答案

将'size'变量初始化为ArrayList的长度。您正在将其初始化为0。

以上是关于如何使用reverse方法反转ArrayList的所有元素?的主要内容,如果未能解决你的问题,请参考以下文章

ArrayList反转

如何将字符串反转?

不使用 reversed() 或 [::-1] 反转字符串?

字符串反转方法

python 实现字符串反转的几种方法

如何反转 ArrayList 输入? [复制]