gpt4 book ai didi

java - 如何获取多个可运行对象共有的变量的最小值?

转载 作者:行者123 更新时间:2023-12-03 22:23:26 25 4
gpt4 key购买 nike

我正在尝试使用线程和 MVC 模拟各种战斗序列。详情:

  • 每个生物都有一个主动分数来决定谁先走。
  • 每个生物都必须说明其预期目标。
  • 生物被加载到“战斗”类的堆栈中;得分最低的生物首先进入堆叠。
  • 一旦每个生物都选择了一个目标,堆栈就会清空,并且生物会根据他们的先发顺序行动,最高优先。

分配约束要求我将这些生物作为单独的线程来处理。问题是:

  • 我不知道有什么方法可以让“战斗”类意识到它必须处理堆栈上的 Action ,因为不会有更多的生物进入它。
  • 我想“战斗”一定有办法知道所有运行线程中最低的主动分数,但我不知道如何管理它。

如果我不能说得更清楚,我深表歉意。这是非常令人沮丧的。

最佳答案

在不知道这个作业的确切要求的情况下,很难给出一个好的答案,但这里有一些想法给你。

Combat 类需要知道它何时拥有所有移动,以便它可以处理它们。每个生物要么每回合需要进行一次战斗移动,要么有某种方式表明它不会进行战斗移动或类似 Action 。没有这些信息,您将不知道何时处理移动。

按先攻顺序处理移动很有意义,但您需要将它们按顺序压入堆栈吗?添加所有移动然后排序或使用优先级队列似乎是更好的解决方案。如果要求战斗类只接受特定顺序的移动,那么是的,它需要知道最低分数。

关于java - 如何获取多个可运行对象共有的变量的最小值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6434413/

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