临时存储java中的对象

临时存储java中的对象,java,object,store,move,Java,Object,Store,Move,是否可以临时存储对象 我打算做的是临时存储一个对象,删除原始对象,然后将临时对象放在其他位置 这给人的印象是,我正在有效地“移动”物体 非常感谢, Player tempPlayer = new Player(); tempPlayer.setValueA() = originalPlayer.getValueA(); // copy all values this way team.remove(originalPlayer); // more code team2.add(tempPlaye

是否可以临时存储对象

我打算做的是临时存储一个对象,删除原始对象,然后将临时对象放在其他位置

这给人的印象是,我正在有效地“移动”物体

非常感谢,

Player tempPlayer = new Player();
tempPlayer.setValueA() = originalPlayer.getValueA();
// copy all values this way
team.remove(originalPlayer);
// more code
team2.add(tempPlayer);

这个答案看起来合适吗?

如果我理解正确,您有两个列表:

ArrayList<Player> team1, team2;
作为参考,更快的方法是:

team2.add(team1.remove(playerIndex).clone());

尽管这确实要求您实现可克隆界面。

这假设您打算从A队转移到B队的球员是A队的第k名球员(从0开始计算,即第一名球员k=0,以此类推):

ArrayList teamA=…//包含玩家p
ArrayList团队B=…//不包含玩家p
玩家p=teamA.get(k);
b.添加(p);
teamA.删除(p);//注意:您也可以使用索引

根据上下文,可能还有其他方法可以访问您要移动的播放器。有关更多可用的方法,请参阅。

我知道我有点晚了,但对于在这里找到自己的其他人:

在这种情况下,最实用的方法是或。 这些允许您将对象添加到堆栈中,然后将其弹出,从而删除它们。
堆栈的工作方式与Deques几乎相同,但Deques实际上比堆栈更灵活,在编码方面更受欢迎。

这可能已经晚了,但我不明白。你介意换一种说法吗?定义“移动”。定义“别处”。基本上,我有一个团队列表和一个球员列表。我想创建球员的临时副本,将其从该团队中删除,然后将副本重新添加到新团队中。我也不确定我是否明白你的意思。你的意思是你想用一个临时变量在另外两个变量之间交换对象吗?为什么你不能将玩家添加到B组并从a组中删除它?谢谢你的帮助,但我有一个团队数组列表和玩家数组列表。那么你将玩家从何处移动到何处?玩家的团队是
player
对象中的一个字段吗?遍历每个团队并以这种方式添加一个玩家,这样每个团队都有其独特的玩家。所以理论上我认为我需要了解如何迭代,复制玩家,将其从团队中移除。然后再次迭代,直到找到所需的团队,然后重新添加玩家的副本?
team2.add(team1.remove(playerIndex).clone());
ArrayList<Player> teamA = ... // contains player p
ArrayList<Player> teamB = ... // does not contain player p
Player p = teamA.get(k);
teamB.add(p);
teamA.remove(p); // Note: you can also use index