Android 如何使用集合将列表中的项从2移动到0
我知道如何使用Collections类替换项目,但我想移动项目,但不替换任何项目Android 如何使用集合将列表中的项从2移动到0,android,collections,Android,Collections,我知道如何使用Collections类替换项目,但我想移动项目,但不替换任何项目 List<String> list = new ArrayList<>(); list.add("A"); list.add("B"); list.add("C"); list.add("D"); /* Outputs {A,B,C,D} I wanna move
List<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
list.add("D");
/*
Outputs
{A,B,C,D}
I wanna move C to 0 on list and move A to 1 on list like this
{C,A,B,D}
*/
List List=new ArrayList();
列表。添加(“A”);
列表。添加(“B”);
列表。添加(“C”);
列表。添加(“D”);
/*
输出
{A,B,C,D}
我想把C移到列表中的0,把A移到列表中的1,就像这样
{C,A,B,D}
*/
事实上,我有评论列表,我想先在Youtube之类的recyclerview中显示用户评论。最好使用LinkedList而不是ArrayList,因为添加和删除过程的计时很快,所以您可以这样做:
List<String> list = new LinkedList<>();
list.add("A");
list.add("B");
list.add("C");
list.add("D");
String element = list.get(2);
list.remove(2);
list.addFirst(element);
之前也有人问过并回答过同样的问题: 例如:
Collections.rotate(list.subList(0, 3), 1);
还有其他类似的可能性:
list.add(0, list.remove(2));
list.add(0, list.remove(2));