例如:一个列表
ABCDE
给定 C ,切换到
CABDE
请注意,数组大小会发生变化,某些项目可能会在运行时被删除
Collections.swap(url, url.indexOf(itemToMove), 0);
此语句不起作用,因为它输出 CBADE 而不是 CABDE ,如何解决?
谢谢。
原文由 user782104 发布,翻译遵循 CC BY-SA 4.0 许可协议
例如:一个列表
ABCDE
给定 C ,切换到
CABDE
请注意,数组大小会发生变化,某些项目可能会在运行时被删除
Collections.swap(url, url.indexOf(itemToMove), 0);
此语句不起作用,因为它输出 CBADE 而不是 CABDE ,如何解决?
谢谢。
原文由 user782104 发布,翻译遵循 CC BY-SA 4.0 许可协议
做这个:
ArraylistObj.remove(object);
ArrayListObj.add(position, Object);
根据你的代码使用这个:
url.remove("C");
url.add(0,"C");
原文由 Venkata Krishna 发布,翻译遵循 CC BY-SA 4.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
您想要的是
ArrayList
中的一个非常昂贵的操作。它需要将列表开头和C
的位置之间的每个元素向下移动一个。但是,如果您真的想这样做:
如果这对您来说是一个频繁的操作,并且随机访问的频率相当低,您可以考虑切换到另一个
List
实现,例如LinkedList
。如果您非常在意元素的顺序,您还应该考虑列表是否是正确的数据结构。