用java编写石头剪刀布游戏
时间: 2024-09-24 15:06:39 浏览: 44
在Java中编写石头剪刀布游戏的基本步骤如下:
1. 定义角色和选择:创建三个类分别代表玩家、电脑和游戏结果,每个类都有一个选择(例如`Rock`, `Paper`, `Scissors`)的属性。
```java
public enum Choice {
ROCK, PAPER, SCISSORS;
}
```
2. 让用户输入:使用Scanner从控制台获取玩家的选择。
```java
import java.util.Scanner;
public class Player {
private Choice choice;
public void select() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你的选择(石头/R, 纸/P, 剪刀/S): ");
choice = Choice.valueOf(scanner.nextLine().toUpperCase());
}
}
```
3. 电脑随机选择:你可以生成一个随机数来模拟电脑的选择。
```java
public class Computer {
private Choice choice;
public void select() {
choice = Choice.values()[Math.floor(Math.random() * 3)];
}
}
```
4. 比较并判断胜负:定义一个函数比较两个选择,返回赢家。
```java
public class GameResult {
public static Choice getWinner(Player player, Computer computer) {
if (player.choice.equals(computer.choice)) return Choice.TIE;
// 使用if...else条件或switch语句来确定结果
return player.choice == Choice.ROCK && computer.choice == Choice.SCISSORS ? Choice.WINNER : ...; // 更改此处以匹配其他组合
}
}
```
5. 游戏循环:运行一个循环,让玩家和电脑交替选择,并打印出结果。
```java
public static void main(String[] args) {
Player player = new Player();
Computer computer = new Computer();
while (true) {
player.select();
computer.select();
Choice winner = GameResult.getWinner(player, computer);
if (winner != Choice.TIE) {
System.out.printf("你选择了 %s, 电脑选择了 %s, 胜者是:%s\n", player.choice, computer.choice, winner);
} else {
System.out.println("平局!");
}
// 可能添加继续游戏的选项或退出条件
}
}
```
阅读全文