四、小白学JAVA-石头剪刀布游戏

1、如何从控制台获取用户输入

复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // 石头剪刀布的思路
        // 1 2 3 石头 剪刀 布
        Scanner scanner = new Scanner(System.in);
        System.out.println("请出拳:1.石头  2.剪刀 3.布【请输入数字1或2或3】");
        int userInput = Integer.parseInt(scanner.nextLine());
        switch (userInput) {
            case 1:
                System.out.println("您出的是石头");
                break;
            case 2:
                System.out.println("您出的是剪刀");
                break;
            case 3:
                System.out.println("您出的是布");
                break;
        }
    }
}

2、设计电脑如何随机出石头剪刀布

复制代码
int computerResult = (int) (Math.random() * 3 + 1);
复制代码
switch (computerResult) {
    case 1:
        System.out.println("电脑出的是石头");
        System.out.println("游戏结果:您失败了");
        break;
    case 2:
        System.out.println("电脑出的也是剪刀");
        System.out.println("游戏结果:平局");
        break;
    case 3:
        System.out.println("电脑出的是布");
        System.out.println("游戏结果:您赢了");
        break;
}

3、如何实现游戏的多轮玩法

复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        // 石头剪刀布的思路
        // 1 2 3 石头 剪刀 布
        while (true) {
            System.out.println("新一轮游戏开始**************************************************************************************");
            int computerResult = (int) (Math.random() * 3 + 1);
            // System.out.println(computerResult);
            Scanner scanner = new Scanner(System.in);
            System.out.println("请出拳:1.石头  2.剪刀 3.布【请输入数字1或2或3】  退出游戏请输入q");
            String quitResult = scanner.nextLine();
            if (quitResult.equals("q")) {
                System.out.println("退出游戏成功,欢迎下次再来!");
                break;
            }
            int userInput = Integer.parseInt(quitResult);
            switch (userInput) {
                case 1:
                    System.out.println("您出的是石头");
                    switch (computerResult) {
                        case 1:
                            System.out.println("电脑出的也是石头");
                            System.out.println("游戏结果:平局");
                            break;
                        case 2:
                            System.out.println("电脑出的也是剪刀");
                            System.out.println("游戏结果:您赢了");
                            break;
                        case 3:
                            System.out.println("电脑出的也是布");
                            System.out.println("游戏结果:您失败了");
                            break;
                    }
                    break;
                case 2:
                    System.out.println("您出的是剪刀");
                    switch (computerResult) {
                        case 1:
                            System.out.println("电脑出的是石头");
                            System.out.println("游戏结果:您失败了");
                            break;
                        case 2:
                            System.out.println("电脑出的也是剪刀");
                            System.out.println("游戏结果:平局");
                            break;
                        case 3:
                            System.out.println("电脑出的是布");
                            System.out.println("游戏结果:您赢了");
                            break;
                    }
                    break;
                case 3:
                    System.out.println("您出的是布");
                    switch (computerResult) {
                        case 1:
                            System.out.println("电脑出的是石头");
                            System.out.println("游戏结果:您赢了");
                            break;
                        case 2:
                            System.out.println("电脑出的是剪刀");
                            System.out.println("游戏结果:您失败了");
                            break;
                        case 3:
                            System.out.println("电脑出的也是布");
                            System.out.println("游戏结果:平局");
                            break;
                    }
                    break;
            }
        }
    }
}
相关推荐
Tummer8363几秒前
C#+WPF+prism+materialdesign创建工具主界面框架
开发语言·c#·wpf
九章云极AladdinEdu7 分钟前
GPU与NPU异构计算任务划分算法研究:基于强化学习的Transformer负载均衡实践
java·开发语言·人工智能·深度学习·测试工具·负载均衡·transformer
佩奇的技术笔记10 分钟前
Java学习手册:客户端负载均衡
java·负载均衡
好吃的肘子29 分钟前
MongoDB 应用实战
大数据·开发语言·数据库·算法·mongodb·全文检索
ghost14331 分钟前
C#学习第23天:面向对象设计模式
开发语言·学习·设计模式·c#
小白学大数据32 分钟前
Scrapy框架下地图爬虫的进度监控与优化策略
开发语言·爬虫·python·scrapy·数据分析
立秋678938 分钟前
用Python绘制梦幻星空
开发语言·python·pygame
可乐加.糖40 分钟前
项目版本管理和Git分支管理方案
java·git·目标跟踪·gitlab·敏捷流程·源代码管理
明月看潮生1 小时前
青少年编程与数学 02-019 Rust 编程基础 16课题、包、单元包及模块
开发语言·青少年编程·rust·编程与数学
wowocpp1 小时前
spring boot Controller 和 RestController 的区别
java·spring boot·后端