上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.3 代码思路及实现
1.3.1 代码思路
1.定义Die类
Die类表示一个骰子有一个faceValue属性,为整型。在Die类中有roll()方法和getFaceValue()方法。roll()方法功能使faceValue属性设置为1~6中的一个随机值,没有返回值。getFaceValue()方法功能为取出faceValue值。
在本类中使用到了Math.random()方法,此方法可以实现取随机数的功能,返回值为double类型,值的范围为0.0~1.0。
2.定义DieGame类
提示:DieGame类有die1、die2两个属性,类型分别为Die类类型,有一个play()方法。play()方法返回一个布尔类型,true表示丢下两个骰子数值的总值为7点,否则为false。
3.编写一个测试类DieTest,对上面定义的类进行测试
main()方法中产生DieGame对象,执行play()方法后显示出输赢。
1.3.2 代码实现
1.Die类
import java.util.*; public class Die { private int faceValue; public void roll() { Random random=new Random(); this.faceValue=Math.abs(random.nextInt()) %6+1;//取1~6间任意整数 } public int getFaceValue() { return this.faceValue; } }
2.DieGame类
public class DiceGame { public Die die1=new Die(); public Die die2=new Die(); public boolean play() //掷骰子,两粒骰子数相加得7为true, 否则为false { boolean flag=false; die1.roll(); die2.roll(); System.out.println(die1.getFaceValue()); System.out.println(die2.getFaceValue()); //输出本次掷得的骰子数 int num=die1.getFaceValue()+die2.getFaceValue(); if(num==7) { flag=true; } else { flag=false; } return flag; } }
3.测试类DieTest
public class DieTest { public static void main(String[] args) { DiceGame dg=new DiceGame(); if(dg.play()) { System.out.println("您赢了!"); } else { System.out.println("您输了, 请下次努力!"); } } }