gpt4 book ai didi

java - 调用者对象方法销毁另一个对象

转载 作者:行者123 更新时间:2023-12-01 15:12:27 26 4
gpt4 key购买 nike

如果我创建 lion 类型的对象和 prey 类型的对象,我想要执行以下操作:

lion.eat(prey)

期间

lion.energy=energy+10,as an example.
prey=null

但我也想将猎物从逻辑生态系统中彻底消灭。

我了解垃圾收集器以及所有这些,并且你们所说的有关垃圾收集器的所有内容都会在没有任何指向它的情况下立即销毁该对象。

但我正在虚拟生态系统中使用数百万个狮子和鹿实例实现遗传算法。现在我该如何消灭死去的动物?

请不要开极客笑话,我厌倦了总是绊倒垃圾收集器和对象谋杀的相同答案,我想要一个解决方案的描述,以逻辑地从狮子方法中取消引用猎物对象。

public class prey
{
int energy=10;
}

public class lion
{
int energy=0;

public void eat(prey aDeer)
{
this.energy=aDeer.energy+this.energy; ///acumulate energy values from prey
aDeer=null;//destroys the object from ecosystem, which seems impossible to do in java
}
}

最佳答案

您已经拥有数百万个猎物,并且您可能将它们存储在一个集合中;例如,ArrayList。从 ArrayList 中删除项目非常简单;调用其 .remove() 函数。

关于java - 调用者对象方法销毁另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12150919/

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