gpt4 book ai didi

java - 删除对象后更新数组列表

转载 作者:行者123 更新时间:2023-12-02 07:51:07 26 4
gpt4 key购买 nike

我有一个 Java 程序,它使用数组列表存储板球俱乐部球员的列表。在俱乐部类中,我有一个静态字段,用于跟踪俱乐部中注册的玩家数量。我还为静态字段分配了一个玩家 ID,以便每次添加玩家时他都会获得一个 ID。就是这样

id = regPlayer++;

regPlayer是静态字段,初始化为1

我遇到的问题是,如果我想从数组列表中删除一个玩家,我似乎无法更新 ID。例如,如果我有四个玩家,在我删除其中任何一个之前,他们将拥有以下 ID:

Player 1 ID = 1
Player 2 ID = 2
Player 3 ID = 3
Player 4 ID = 4

如果我删除玩家 2,我现在希望第三个玩家的 ID 为 2,第四个玩家的 ID 为 3,如下所示:

Player 1 = 1
Player 3 = 2
Player 4 = 3

有没有办法用数组列表来实现这一点以及如何实现?

最佳答案

ID 通常应该是不可变的。您不应该仅仅因为您想让 ID 作为列表中的索引而移动 ID。因此,不要更新 ID。这与尝试更新某人的社会安全号码大致相同...坏主意。

我只能猜测您希望 ID 反射(reflect)索引位置,以便您可以以某种方式快速知道给定对象占据哪个位置。如果是这种情况,只需使用:List.indexOf(Object) 来查找位置,而不是依靠 ID 来表示位置。

关于java - 删除对象后更新数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10215437/

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