在这个数字时代,编程不仅仅是一种技能,更是一种思维方式。今天,我们就来探讨如何使用Java编写一个简单的人机猜拳游戏,并实现对其游戏次数的智能统计。这样,你就可以告别手动统计,让计算机帮你完成这项工作。
游戏规则
首先,让我们明确一下猜拳游戏的规则:
- 玩家可以选择剪刀、石头、布。
- 计算机会随机选择剪刀、石头、布。
- 比较玩家和计算机的选择,判断胜负。
程序设计
1. 创建一个简单的猜拳游戏类
import java.util.Random;
public class RockPaperScissors {
public enum Choice { ROCK, PAPER, SCISSORS }
public static Choice getComputerChoice() {
Random random = new Random();
return Choice.values()[random.nextInt(Choice.values().length)];
}
public static String convertChoiceToString(Choice choice) {
switch (choice) {
case ROCK:
return "石头";
case PAPER:
return "布";
case SCISSORS:
return "剪刀";
default:
return "";
}
}
}
2. 实现人机对战
public class Game {
public static void main(String[] args) {
int playerCount = 0;
int computerCount = 0;
int drawCount = 0;
while (true) {
System.out.println("请选择:1.石头 2.布 3.剪刀(输入-1退出)");
int playerInput = new java.util.Scanner(System.in).nextInt();
if (playerInput == -1) {
break;
}
Choice playerChoice = Choice.values()[playerInput - 1];
Choice computerChoice = RockPaperScissors.getComputerChoice();
String playerString = RockPaperScissors.convertChoiceToString(playerChoice);
String computerString = RockPaperScissors.convertChoiceToString(computerChoice);
System.out.println("玩家选择了:" + playerString + ",计算机选择了:" + computerString);
if (playerChoice == computerChoice) {
System.out.println("平局!");
drawCount++;
} else if ((playerChoice == Choice.ROCK && computerChoice == Choice.SCISSORS) ||
(playerChoice == Choice.PAPER && computerChoice == Choice.ROCK) ||
(playerChoice == Choice.SCISSORS && computerChoice == Choice.PAPER)) {
System.out.println("玩家胜利!");
playerCount++;
} else {
System.out.println("计算机胜利!");
computerCount++;
}
}
System.out.println("游戏结束!");
System.out.println("玩家胜:" + playerCount + "次,计算机胜:" + computerCount + "次,平局:" + drawCount + "次。");
}
}
3. 运行程序
运行上述程序,你就可以开始玩猜拳游戏了。每玩一次,程序都会自动统计玩家和计算机的胜利次数以及平局次数。
总结
通过以上步骤,我们成功实现了一个简单的人机猜拳游戏,并对其游戏次数进行了智能统计。这个例子展示了Java编程的强大之处,即通过简单的代码就能实现复杂的功能。希望这个例子能帮助你更好地理解Java编程,并激发你对编程的兴趣。
