当前位置: 首页 > 面试题库 >

在ArrayList中移动项目

连文栋
2023-03-14
问题内容

我一直在玩ArrayLists。我想要实现的是一种执行以下操作的方法:

Item 1
Item 2
Item 3
Item 4

我试图能够将列表中的项目向上移动,除非它已经位于顶部,在这种情况下它将保持不变。例如,如果项目3被移动,则列表将为:

Item 1
Item 3
Item 2
Item 4

从目前的了解来看,我想要一些类似的东西:

IF arrayname index is not equal to 0
THEN move up
ELSE do nothing

我苦苦挣扎的部分是“向上移动”部分。任何有关如何实现的技巧或代码示例都将受到赞赏。


问题答案:

我在寻找答案时遇到了这个老问题,我以为我会发布找到的解决方案,以防其他人经过这里寻找相同的解决方案。

对于交换2个元素,Collections.swap很好。但是,如果我们想移动更多元素,那么有一个更好的解决方案,涉及创造性地使用Collections.sublist和Collections.rotate,直到我看到这里描述的时候才想到:

http://docs.oracle.com/javase/6/docs/api/java/util/Collections.html#rotate%28java.util.List,%20int%29

这是一个报价,但也去那里自己读一遍:

注意,此方法可以有效地应用于子列表,以在保留剩余元素顺序的同时在列表中移动一个或多个元素。例如,以下成语将索引j处的元素向前移动到位置k(其必须大于或等于j):

Collections.rotate(list.subList(j, k+1), -1);



 类似资料:
  • 问题内容: 在Python中,如何将项目移至列表中的确定索引? 问题答案: 使用列表的方法: 另外,您可以使用切片符号: 如果要将列表中已存在的项目移动到指定位置,则必须将其删除并将其插入新位置:

  • 我有一个包含以下元素的ArrayList: 我要将移到之后,以以下顺序: 我使用此代码: 上述代码的结果如下: 移动一个又一个元素的最佳方法是什么?

  • 我在Java中有以下: 我想将它的数据移动到: 有可能那样做吗?

  • 问题内容: 大家好。我正在制作一个词汇应用程序,需要在其中创建一个 (或ArrayList)。为此,我创建了以下代码(仅作为示例): 我还尝试了以下方法: 他们两个都将该项目添加到列表中,但是在调试时,我发现它的数组有12个对象,如下所示: 我的问题是我不能拥有这些空项目,因为此新列表是上的键,因此任何更改都将导致异常,因为该键将不存在。 使用调试器的列表(tempSOLUTION)详细信息的屏幕

  • 我正在尝试将我的woocommerce结帐中的装运选项移出审查订单。php和表单签出。php 我已经拿到密码了 并将其移动到我的主题表单签出。php的问题是,当我输入或更改地址时,它现在不会更新发货。这已经被接受为一个在线解决方案,但我认为woocommerce从那时起已经更新。 我认为问题在于,当调用update\u checkout Ajax时,配送选项现在没有更新,但我不确定如何更改。 非常

  • 我有一个程序,它从文件中获取输入,将文件中的每个单词保存为令牌,然后将每个令牌添加到数组列表中。 问题是arrayList出现了例如[“cat”,“dog”,“”,“”,“bird”],我不想在arrayList中出现空格。 总之,我的代码如下: 应该会删除空格,我已经通过从非文件数组列表中删除空格进行了测试。奇怪的是,如果我将其更改为,它将从ArrayList中删除cat。