gpt4 book ai didi

java - 在添加或删除其中的项目时保持初始列表项目顺序

转载 作者:行者123 更新时间:2023-12-02 00:59:01 25 4
gpt4 key购买 nike

我需要能够从列表中删除项目并将它们插入回来,同时保持相同的顺序。我的列表从初始的一组项目开始。无法插入新项目。因此,added-items 和 max-item-count 保持不变。

示例:

我的初始列表如下

0=201, 1=402, 2=952, 3=101, 4=-54, 5=0 

如果我删除 2、4 个位置的项目,我有

0=201, 1=402, 3=101, 5=0 

但是,当我将已删除位置的项目添加回列表时; {2, 4},我有

0=201, 1=402, 3=101, 5=0, 2=952, 4=-54

我希望按初始顺序添加项目。即

0=201, 1=402, 2=952, 3=101, 4=-54, 5=0 

它们必须按照删除时的原始顺序排列。这只是一个示例,这些值无法排序。它们按照添加的顺序排列。

如果您建议使用原件的备份列表,我如何确定当前列表的正确相邻位置?因此,如果原始列表有 6 个项目,并且值 -54 位于 4 索引处。我从列表中删除了 {2,3,4} 项。新列表的大小更改为 3。我无法将原始列表中 4 索引处的项目添加到 4 索引处的新列表。新列表将仅包含 {0, 1, 2} 作为有效位置。此外,这甚至可能无法维持秩序。

所以问题是,如何在列表中删除和添加元素并确保保持顺序?

另外,这应该用 LinkedList 来完成吗?如果是,怎么办?

编辑:原始列表是一个ArrayList。我无法修改这个类型。当然,在确定正确的索引后,我需要从另一个集合中为其提供项目。

最佳答案

首先备份原件列表,但在Map <Index, Map<oldValue, NewValue>>中(根据您的要求)。如果您从 ArrayList 中删除任何项目将新值标记为 null在 map 中。

关于java - 在添加或删除其中的项目时保持初始列表项目顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60945040/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com