java - 在 Java 中重新排列 ArrayList 的最佳方法

标签 java list

重新排列列表中元素的最佳方式是什么?我需要能够移动元素以移动列表中的元素,在索引中后退或前进一步。我正在考虑获取项目的索引,将其添加到索引 -1/+2 并删除旧引用。

有没有更快的方法来处理重新排列,而不会在此过程中在列表中创建重复项。

最佳答案

使用JDK的swap方法

JDK 的 Collections 类包含一个专门用于此目的的方法,称为 Collections.swap .根据 API 文档,此方法允许您“交换指定列表中指定位置的元素。”

我建议使用此解决方案,这样您就不必从列表中删除元素,也不必滚动自己的交换方法。此外,看起来这种方法自 Java 1.4 版本以来就已经存在,因此它应该适用于大多数现代 JDK。

关于java - 在 Java 中重新排列 ArrayList 的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/657581/

相关文章:

java - .jar 适用于 Windows 但不适用于 Linux (stacktrace)

python - 查找列表之间的差异并将差异附加到列表,但对于 40 个不同的列表 - python

c# - IQueryable、List、IEnumerator 之间的区别?

c# - 多维列表<T>?

java - 浏览 Chrome ://settings by Selenium

java - tomcat 的 server.xml 的工厂属性是否需要?

java - 就性能而言, `java.net` 和 `java.nio` 的替代方案是什么?

java - iOS 的 Libgdx 项目在模拟器上通过 robovm 编译时显示 libgdx 启动?

list - Prolog 逆向列表前面的成员

c++ - push_backing 到指针列表中导致内存泄漏