java石头剪刀布代码
时间: 2024-10-10 12:16:16 浏览: 46
在 Java 中,我们可以创建一个简单的 "石头、剪刀、布" 游戏的代码。这个程序通常会包含两个玩家,每个玩家输入他们的选择(石头、剪刀、布),然后比较两者的胜负情况。下面是一个基本的实现示例:
```java
import java.util.Scanner;
public class RockPaperScissors {
public enum Gesture { ROCK, PAPER, SCISSORS }
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您的选择 (1. 石头 2. 剪刀 3. 布): ");
int playerOneChoice = scanner.nextInt();
Gesture playerOneGesture = convertToIntToGesture(playerOneChoice);
// 模拟电脑的选择
int randomChoice = (int) (Math.random() * 3) + 1;
Gesture computerChoice = Gesture.values()[randomChoice - 1];
// 比较结果
String result = compare Gestures(playerOneGesture, computerChoice);
System.out.printf("玩家选择:%s vs 电脑选择:%s\n", playerOneGesture, computerChoice);
System.out.println(result);
scanner.close();
}
private static Gesture convertToIntToGesture(int choice) {
switch (choice) {
case 1:
return Gesture.ROCK;
case 2:
return Gesture.PAPER;
case 3:
return Gesture.SCISSORS;
default:
throw new IllegalArgumentException("无效的选择");
}
}
private static String compare(Gesture player, Gesture computer) {
if (player == computer) {
return "平局";
} else if ((player == Gesture.ROCK && computer == Gesture.SCISSORS) ||
(player == Gesture.PAPER && computer == Gesture.ROCK) ||
(player == Gesture.SCISSORS && computer == Gesture.PAPER)) {
return "玩家赢了";
} else {
return "电脑赢了";
}
}
}
```
在这个例子中,`convertToIntToGesture` 函数将用户输入的数字转换为 `Gesture` 类型,然后`compare`函数用于比较玩家和电脑的选择。你可以通过运行这个程序并输入相应的数字来体验游戏。
阅读全文