Java-Yahtzee游戏中的向量
我被要求在Java上编写一个Yahtzee游戏。问题是,我得到了一个由5个值(代表骰子)组成的向量,这些值是用以下代码随机生成的:Java-Yahtzee游戏中的向量,java,variables,vector,boolean,constants,Java,Variables,Vector,Boolean,Constants,我被要求在Java上编写一个Yahtzee游戏。问题是,我得到了一个由5个值(代表骰子)组成的向量,这些值是用以下代码随机生成的: Value= 1 + (int)(Math.random() * (5.999)) 现在的问题是,一旦生成了数字(或者掷了骰子),玩家就可以选择一些值并保持它们(使它们保持不变),因此当生成新值时,所选值不会改变 我一直试图用一个布尔变量来实现这一点,但运气不好。保持向量值不变的方法是什么?我真的很感激任何帮助,谢谢 我建议使用列表。删除玩家没有保留的任何值,然后
Value= 1 + (int)(Math.random() * (5.999))
现在的问题是,一旦生成了数字(或者掷了骰子),玩家就可以选择一些值并保持它们(使它们保持不变),因此当生成新值时,所选值不会改变
我一直试图用一个布尔变量来实现这一点,但运气不好。保持向量值不变的方法是什么?我真的很感激任何帮助,谢谢 我建议使用
列表
。删除玩家没有保留的任何值,然后在下一次投掷时将其填充回5号
另一种方法是使用
randomize()
和hold()
方法创建一个Dice
类,并让randomize()
仅在未调用hold()
的情况下生成一个新的随机值。您可以乘以6
。Vector于1998年被ArrayList取代。通过不更改向量值,可以保持向量值不变。你能解释一下为什么要改变向量吗(如果你不想改变它的话)?如果总是有5个骰子,有什么理由不使用标准数组吗?另外,不要使用复杂的表达式。只需使用Random#nextInt()
。在游戏中,玩家可以在一个回合内掷骰子3次。我们的目标是让所有的骰子都是一样的,这样你就可以选择拿什么骰子,然后再扔其他的。谢谢!我有一门像你说的那样的Dice
课。创建了hold()
方法,它现在工作正常,只生成不保留的值。