2013-02-18 65 views
0

我刚开始学习Java几个月前,我已经设置了一个任务来创建一个简单的java骰子游戏。第一个练习是实现模具类,用下面的实例变量,构造函数和方法:在创建java骰子游戏的类时遇到困难

private int faceValue; // Current face value of die 
private int sides; // Number of sides 
private Random generator; 
public Die(int s){} 
public void throwDie(){} 
public int getFaceValue(){} 
public String toString() {} 
在纸牌游戏中

我先前编码,我用:

public static final String suits[] = { "Clubs", "Spades", "Hearts", "Diamonds"}; 

设置的值我的西装,我能否对我的“faceValue”变量做同样的事情,只将它们设置为1,2,3,4,5和6?

感谢您的阅读,希望有人在这里可以帮助,实施类和构造是我似乎正在努力!

+0

抱歉是什么问题? – 2013-02-18 14:22:15

+0

你可以,但它不是一个好主意。你的任务的核心是使用'Random'类。你应该阅读它的[Javadoc](http://docs.oracle.com/javase/6/docs/api/java/util/Random.html)。要特别注意'nextInt(int)'方法。 – Perception 2013-02-18 14:32:10

回答

3

这看起来很像一个家庭作业问题,所以我不会给你一个实现,而是一个想法。 (如果不是,那就这样说吧,我可以相应地调整)

我认为传递给构造函数的参数可能应该是die中的边数,也就是说,边是可变的。你不想立即创建一个数组或枚举,因为我想你想要的唯一面值是不可或缺的,而且这是比必要的更多的工作。

您可能想要将该输入值分配给代表它的变量,并使用它创建一个数字生成器,该数字生成器可在0和该数字之间进行缩放。

+0

好吧,我想我明白你的意思了。所以我应该把我的身体设置为6,(假设我使用常规的6面骰子),然后将阵列排除。你是对的,因为我想要faceValue的唯一值是整数。你也是对的,因为这是一个家庭作业问题,所以我只是在正确的方向寻找一个点,谢谢! – 2013-02-18 14:37:24