Java利用Scanner实现控制台文字游戏,Java实现猜数字游戏简易文字游戏,Java实现石头剪刀布简易文字游戏

news2024/10/6 10:42:33

1、猜数字游戏简易文字游戏

    public static void main(String[] args) {
        //文本扫描器
        Scanner scanner = new Scanner(System.in);
        //获取本次游戏的正确数字
        int num = new Random().nextInt(100);
        System.out.println("开始猜数字游戏,输入数字后按enter");
        while (true) {
            //获取控制台输入的数字
            int inputNum = scanner.nextInt();
            if (num > inputNum) {
                System.out.println("猜错了,当前数字小于正确答案 当前猜测数字:" + inputNum);
            } else if (num < inputNum) {
                System.out.println("猜错了,当前数字大于正确答案 当前猜测数字:" + inputNum);
            } else {
                System.out.println("答案正确 游戏结束...... " + num);
                break;
            }
        }
        //关闭文本扫描器
        scanner.close();
    }

在这里插入图片描述

2、石头剪刀布简易文字游戏

 public static void main(String[] args) {
        //文本扫描器
        Scanner scanner = new Scanner(System.in);
        System.out.println("开始石头剪刀布游戏,输入(石头、剪刀、布)后按enter进行游戏,输入(退出)后按enter退出游戏");
        ArrayList<String> gameValue = Lists.newArrayList("石头", "剪刀", "布");
        //规则限制只能输入 石头 剪刀 布
        Pattern pattern = Pattern.compile("石头|剪刀|布");
        while (true) {
            //获取控制台输入的数字
            String inputStr = scanner.next();
            if ("退出".equals(inputStr)) break;
            if (!pattern.matcher(inputStr).find()) {
                System.out.println("无效的游戏输入值:" + inputStr);
                continue;
            }
            int index = new Random().nextInt(gameValue.size());
            String gv = gameValue.get(index);
            System.out.println("电脑出拳:" + gv + " 玩家出拳:" + inputStr);
            //游戏输赢规则判断
            gameRule(inputStr, gv);
        }
        scanner.close();
    }

    /**
     * 游戏输赢规则判断
     *
     * @param inputStr 玩家出拳参数
     * @param gv       系统出拳参数
     */
    private static void gameRule(String inputStr, String gv) {
        if (gv.equals(inputStr)) {
            System.out.println("平局!!");
            return;
        }
        switch (inputStr) {
            case "石头": {
                if ("剪刀".equals(gv)) {
                    System.out.println("恭喜您本局胜利!!");
                } else {
                    System.out.println("很遗憾您本局输了!!");
                }
                break;
            }
            case "剪刀": {
                if ("布".equals(gv)) {
                    System.out.println("恭喜您本局胜利!!");
                } else {
                    System.out.println("很遗憾您本局输了!!");
                }
                break;
            }
            case "布": {
                if ("石头".equals(gv)) {
                    System.out.println("恭喜您本局胜利!!");
                } else {
                    System.out.println("很遗憾您本局输了!!");
                }
            }
        }
    }

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1797773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DLL文件修复dffsetup3.3.90,带Keygen

之前分享过DirectX与4DDiGDLLFixer&#xff0c;今天再分享一款&#xff0c;名字叫DLLfiles Fixer&#xff0c;中文版带key你懂的&#xff0c;对于玩游戏人来说&#xff0c;经常因为少了某个dll文件无法运行&#xff0c;DLL-files Fixer能够非常方便的修复。 软件功能 可以消除…

提升学校管理效率,智慧校园解决方案来袭

你是不是曾为学校管理效率低下而困扰&#xff1f;是不是对传统的教育模式感到力不从心&#xff1f;现在&#xff0c;一个划时代的解决方案来啦——智慧校园&#xff01; 随着科技的不断发展&#xff0c;智慧校园正逐渐改变着学校的管理方式。通过将信息技术与教育相结合&#x…

【Java数据结构】详解LinkedList与链表(一)

&#x1f512;文章目录&#xff1a; 1.❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; 2.ArrayList的缺陷 3.链表的概念及结构 4.无头单向非循环链表的实现 4.1成员属性 4.2成员方法 createList display——打印链表 addFirst——头插 addLast…

70 Realistic Mountain Environment Textures Cliff(70+张真实的山地环境纹理)

大量适合山区和其他岩石环境的纹理--悬崖、岩石、砾石等等 每个纹理都是可贴的/无缝的,并且完全兼容各种不同的场景--标准Unity地形、Unity标准着色器、URP、HDRP等等都兼容。 所有的纹理都是4096x4096,并包括一个HDRP掩码,以完全支持HDRP。 特点。 70种质地 70种材料 70个地…

000002 - Hadoop环境安装

Hadoop及其大数据生态圈 1. 背景2. 实践2.1 Linux服务器准备2.2 在其中一台服务器上安装JDK2.3 在其中一台服务器上安装HADOOP2.4 本地模式运行一个hadoop案例 3. 自动化部署 1. 背景 要搭建Hadoop集群环境&#xff0c;我们需要执行如下 准备三台Linux服务器&#xff0c;服务…

【Linux驱动】【手把手配置3568寄存器】点亮RK3568的一颗LED

【硬件】 3568的LED9 &#xff1a;引脚 GPIO0 B7 【配置GPIO的复用】 找配置复用关系的寄存器基地址、偏移地址、对应配置的GPIO。 查找&#xff1a;io -r -4 0xfdc2000c 系统设置的默认值 结果为1&#xff0c;意思是只有bit 0是1&#xff0c;其他全都为0。所以系统默认就是…

【面试干货】 非关系型数据库(NoSQL)与 关系型数据库(RDBMS)的比较

【面试干货】 非关系型数据库&#xff08;NoSQL&#xff09;与 关系型数据库&#xff08;RDBMS&#xff09;的比较 一、引言二、非关系型数据库&#xff08;NoSQL&#xff09;2.1 优势 三、关系型数据库&#xff08;RDBMS&#xff09;3.1 优势 四、结论 &#x1f496;The Begin…

论文合集整理推荐2024.6.4

论文合集整理推荐2024.6.4 原创 小王搬运工 时序课堂 2024-06-04 20:12 四川 ‍2012年论文合集&#xff1a;论文入口 ‍2019年论文合集&#xff1a;论文入口 2021年论文合集&#xff1a;论文入口 2022年论文合集&#xff1a;论文入口 2023年论文合集&#xff1a;论文入口…

数据结构---力扣 20.有效的括号 (C语言

1.链接&#xff1a; . - 力扣&#xff08;LeetCode&#xff09;【点击即可跳转】 思路&#xff1a; 使用 栈 来完成操作 1.左括号-- 入栈 2.右括号-- 判断出栈顶的左括号与右括号是否匹配 如果匹配-->继续 不匹配-->终止 代码中 栈 的基本实现&#xff0c;不在以下展示&…

两站图片滑动对比效果实现(VUE3)

像这种图片滑动对比的效果&#xff0c;网上还不少见吧&#xff0c;但是网上却不好找到完整现成的实现代码&#xff0c;我找到几个地方有类似的代码&#xff0c;但是都不好直接移植到代码里&#xff0c;因为很多都是使用原生htmlcssjs实现&#xff0c;太复杂了。反而不好应用到v…

【Python Cookbook】S02E04 文本模式的匹配和查找 match()、search()、findall() 以及 捕获组和 + 的含义

目录 问题解决方案讨论 问题 本文讨论一些按照特定的文本模式进行的查找和匹配。 解决方案 如果想要匹配的只是简单文字&#xff0c;通常我们使用一些内置的基本字符串方法即可&#xff0c;如&#xff1a;str.find()&#xff0c;str.startwith()&#xff0c;str.endswith() …

MySQL数据库数据恢复方案应对没有where误操作导致的大量数据更新或删除

&#x1f604; 19年之后由于某些原因断更了三年&#xff0c;23年重新扬帆起航&#xff0c;推出更多优质博文&#xff0c;希望大家多多支持&#xff5e; &#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有坚忍不拔之志 &#x1f390; 个人CSND主页——Mi…

二分答案-acwing-102. 最佳牛围栏

题目传送门&#xff1a;t​​​102. 最佳牛围栏 - AcWing题库高质量的算法题库https://www.acwing.com/problem/content/104/ 解题思路 整体解析 按照题目要求我们要找到一块连续的区域&#xff0c;使其里面每块地里面的平均值最大&#xff0c;且这块区域的长度要大于f 二分处理…

STM32——ADC篇(ADC的使用)

一、ADC的介绍 1.1什么是ADC ADC&#xff08;Analogto-Digital Converter&#xff09;模拟数字转换器&#xff0c;是将模拟信号转换成数字信号的一种外设。比如某一个电阻两端的是一个模拟信号&#xff0c;单片机无法直接采集&#xff0c;此时需要ADC先将短租两端的电…

免费获取云服务器

这几天刚入手了阿贝云的 “免费云服务器 ” &#xff0c;接下来给大家讲讲如何免费注册阿贝云的免费云服务器 如何获取免费云服务器 打开阿贝云官网&#xff0c;注册并认证 即可以领取免费云服务器 阿贝云地址&#xff1a;https://www.abeiyun.com/ 服务器优势 永久免费&…

单点登录(SSO)前端怎么做

单点登录&#xff08;SSO&#xff09;前端怎么做 本文介绍单点登录&#xff08;SSO&#xff09;是什么&#xff0c;还有就是前端怎么做。 单点登录&#xff08;SSO&#xff09;是什么 单点登录&#xff08;SSO&#xff0c;Single Sign On&#xff09;&#xff0c;是在企业内部…

【Java笔记】第9章:三个修饰符

前言1. abstract&#xff08;抽象的&#xff09;2. static&#xff08;静态的&#xff09;3. final&#xff08;最终的&#xff09;结语 上期回顾:【Java笔记】第8章&#xff1a;面向对象的三大特性&#xff08;封装、继承、多态&#xff09; 个人主页&#xff1a;C_GUIQU 归属…

瑞鑫RK3588 画中画 OSD 效果展示

这些功能本来在1126平台都实现过 但是迁移到3588平台之后 发现 API接口变化较大 主要开始的时候会比较费时间 需要找到变动接口对应的新接口 之后 就比较好操作了 经过几天的操作 已实现 效果如下

项目工具|git相关

本博客暂时只作为个人资料&#xff0c;后续会进行完善&#xff0c;主要内容来自&#xff1a; 【【Git第一讲】&#xff1a;git分区与两个盒子的故事】 理解暂存区和未暂存区 git为什么要多一个暂存区&#xff1f;难道不能我把代码写完后就是未暂存区&#xff0c;然后直接提交…

ROS2从入门到精通4-3:全局路径规划插件开发案例(以A*算法为例)

目录 0 专栏介绍1 路径规划插件的意义2 全局规划插件编写模板2.1 构造规划插件类2.2 注册并导出插件2.3 编译与使用插件 3 全局规划插件开发案例(A*算法)常见问题 0 专栏介绍 本专栏旨在通过对ROS2的系统学习&#xff0c;掌握ROS2底层基本分布式原理&#xff0c;并具有机器人建…