What is the best way to rearrange elements in an list? I need the ability to move elements to move elements in the list, one step back or forward in the index. I was thinking of getting the index of the item, adding it at index -1 / +2 and removing the old reference.
Is there a faster way to handle rearranging without creating duplicates in the list in the process.
解决方案
Use the JDK's swap method
The JDK's Collections class contains a method just for this purpose called Collections.swap. According to the API documentation this method allows you to "swap the elements at the specified positions in the specified list."
I suggest this solution so that you don't have to remove elements from the List and so that you don't have to roll your own swap method. Also, it looks like this method has been around since the 1.4 release of Java so it should work for most of the modern JDKs.
本文介绍了如何利用Java的Collections.swap()方法来高效地在列表中重新排列元素,避免了删除和创建重复项的过程。这种方法简单且适用于大多数现代JDK,确保了列表操作的效率。
1429

被折叠的 条评论
为什么被折叠?



