本文共 3080 字,大约阅读时间需要 10 分钟。
用JAVA实现了一个简单的猜拳游戏,准备记录下来,算作是总结和回顾吧。程序运行结果如下:
1.首先你需要编写一个电脑的类,类中有一个记录获胜几次的成员变量,和一个出拳的方法(用取随机数字来表示电脑出拳),代码如下:
1 class Computer { 2 int count; 3 4 public int showFist() { 5 Random obj = new Random(); 6 // 利用Random类的nextInt()方法生成0-2之间的数 7 int number = obj.nextInt(3) + 1; 8 switch (number) { 9 case 1:10 System.out.println("电脑出:石头");11 break;12 case 2:13 System.out.println("电脑出:剪刀");14 break;15 case 3:16 System.out.println("电脑出:布");17 break;18 }19 return number;20 }21 }
2.然后你需要一个和电脑玩耍的人,类中同样也是一个记录获胜的成员变量和一个出拳的方法(取控制台用户输入的数值作为你出拳),代码如下:
1 class Person { 2 int count; 3 4 public int showFist() { 5 Scanner input = new Scanner(System.in); 6 System.out.println("请出拳:1.石头 2.剪刀 3.布 0.退出"); 7 int number = input.nextInt(); 8 switch (number) { 9 case 1:10 System.out.println("我出:石头");11 break;12 case 2:13 System.out.println("我出:剪刀");14 break;15 case 3:16 System.out.println("我出:布");17 break;18 case 0:19 break;20 }21 return number;22 }23 }
3.最后就是玩游戏的主体类,类中三个成员变量,分别是电脑、人、记录玩总次数,还有一个构造函数用来初始化电脑和人对象,一个判断输赢的方法,一个打印结果方法,代码如下:
1 public class FingerGuessing { 2 Person per; 3 Computer com; 4 int count; 5 6 public FingerGuessing() { 7 per = new Person(); 8 com = new Computer(); 9 count = 0;10 }11 12 public void gameBegin() {13 System.out.println("==========猜拳小游戏==========");14 System.out.println("= 游戏规则:1.石头 2.剪刀 3.布 0.退出 =");15 System.out.println("===========================");16 int perno;17 int comno;18 do {19 perno = per.showFist();20 if (perno == 0) {21 showResult();22 break;23 }24 comno = com.showFist();25 if ((perno == comno)) {26 System.out.println("平局\n");27 this.count++;28 } else if ((perno - comno == -1) || (perno - comno == 2)) {29 System.out.println("恭喜,你赢了!\n");30 per.count++;31 this.count++;32 } else {33 System.out.println("很遗憾,你输了!\n");34 com.count++;35 this.count++;36 }37 38 } while (perno != 0);39 40 }41 public void showResult() {42 System.out.println("与电脑共较量<" + this.count + ">次;");43 System.out.println("玩家获胜<" + per.count + ">次;");44 System.out.println("电脑获胜<" + com.count + ">次;");45 System.out.println("平局<" + (this.count-per.count-com.count) + ">次;");46 }47 48 public static void main(String[] args) {49 FingerGuessing game = new FingerGuessing();50 game.gameBegin();51 }52 }
这样猜拳小游戏就OK了,来,和我猜拳吧!
本文转自Orson博客园博客,原文链接:http://www.cnblogs.com/java-class/p/4065119.html,如需转载请自行联系原作者