2 回答

TA贡献1805条经验 获得超10个赞
你的设计基本上是正确的。唯一的就是-
前面缺少的faceValue
属性。我不确定缺少的指标是否默认为某些内容(乍一看无法找到和指示)。无论如何,您应该添加它以使其明确。
此外,Dice
应重命名为Die
(singular)。
最后(更深入地研究您的代码)您需要一个Die
包含 2 个元素的数组,而不仅仅是一个元素,dice
并且您需要同时掷两个骰子。

TA贡献1772条经验 获得超8个赞
我认为骰子不是赌徒的一部分,赌徒只有掷骰子的行为。我认为下面的实现会更好:
class Gambler{
//some field
public int roll(Dice dice){
return dice.roll();
}
}
/* --------------------------- */
import java.util.Random;
class Dice{
private int[] values = new int[]{1,2,3,4,5,6};
public int roll(){
//get random value between 1 ,6
Random random = new Random();
return values[random.nextInt((6 - 1) + 1) + 1];
}
}
当然,这取决于实际需求。
添加回答
举报