骰子值
Dice Roller Values
我正在使用 java 创建一个掷骰子应用程序。我有一个滚动单个骰子的“骰子”class,以及一个使用“骰子”的多个实例变量的“骰子”class。但是,对于我的值,它只有 returns 0。骰子 class 可以自行运作,并且会掷出一个随机数,但我不知道如何在我的“骰子”class 中获得多次掷骰。感谢任何帮助。
骰子Class
public class Dice {
Die die1=new Die();
Die die2=new Die();
private int die1Value;
private int die2Value;
private int sum;
public Dice() {
die1Value=0;
die2Value=0;
}
public int getDie1Value() {
return die1Value;
}
public int getDie2Value() {
return die2Value;
}
public int getSum() {
return sum;
}
public void roll() {
die1Value=die1.getValue();
die2Value=die2.getValue();
sum=die1Value+die2Value;
}
public void printRoll() {
System.out.println("Die 1: "+die1Value);
System.out.println("Die 2: "+die2Value);
System.out.println("Total: "+sum);
if (sum==7) {
System.out.println("Craps!");
} else if (die1Value==1 && die2Value==1) {
System.out.println("Snake Eyes!");
} else if (die1Value==6 && die2Value==6) {
System.out.println("Box Cars!");
} else {
System.out.println();
}
}
}
死Class
package a3.ben;
public class Die {
private int value;
public Die() {
}
public void roll() {
value=(int) (Math.random()*6)+1;
}
public int getValue() {
return value;
}
}
你永远不会打电话给 die.roll
。尝试更改 Dice
中的 roll
方法以包括在获取它们的值之前滚动两个骰子。
public void roll() {
die1.roll(); // change the value of both dice
die2.roll();
die1Value = die1.getValue();
die2Value = die2.getValue();
sum = die1Value + die2Value;
}
还在 =
和 +
等运算符周围添加了一些空格以提高可读性
我正在使用 java 创建一个掷骰子应用程序。我有一个滚动单个骰子的“骰子”class,以及一个使用“骰子”的多个实例变量的“骰子”class。但是,对于我的值,它只有 returns 0。骰子 class 可以自行运作,并且会掷出一个随机数,但我不知道如何在我的“骰子”class 中获得多次掷骰。感谢任何帮助。
骰子Class
public class Dice {
Die die1=new Die();
Die die2=new Die();
private int die1Value;
private int die2Value;
private int sum;
public Dice() {
die1Value=0;
die2Value=0;
}
public int getDie1Value() {
return die1Value;
}
public int getDie2Value() {
return die2Value;
}
public int getSum() {
return sum;
}
public void roll() {
die1Value=die1.getValue();
die2Value=die2.getValue();
sum=die1Value+die2Value;
}
public void printRoll() {
System.out.println("Die 1: "+die1Value);
System.out.println("Die 2: "+die2Value);
System.out.println("Total: "+sum);
if (sum==7) {
System.out.println("Craps!");
} else if (die1Value==1 && die2Value==1) {
System.out.println("Snake Eyes!");
} else if (die1Value==6 && die2Value==6) {
System.out.println("Box Cars!");
} else {
System.out.println();
}
}
}
死Class
package a3.ben;
public class Die {
private int value;
public Die() {
}
public void roll() {
value=(int) (Math.random()*6)+1;
}
public int getValue() {
return value;
}
}
你永远不会打电话给 die.roll
。尝试更改 Dice
中的 roll
方法以包括在获取它们的值之前滚动两个骰子。
public void roll() {
die1.roll(); // change the value of both dice
die2.roll();
die1Value = die1.getValue();
die2Value = die2.getValue();
sum = die1Value + die2Value;
}
还在 =
和 +
等运算符周围添加了一些空格以提高可读性