中秋猜谜语-一个简单的java猜谜语游戏

中秋猜谜语是中秋节的一种传统习俗,它是由古代的谜语发展而来的,起源于春秋战国时期。它是一种富有讥谏、规戒、诙谐、笑谑的文艺游戏。谜语悬之于灯,供人猜射,开始于南宋。《武林旧事·灯品》记载:"以绢灯剪写诗词,时寓讥笑,及画人物,藏头隐语,及旧京诨语,戏弄行人。"

中秋猜谜语不仅能增加节日的欢乐气氛,也能启迪智慧,增长知识,培养创造力和想象力。中秋猜谜语的内容涉及历史、地理、文学、艺术、科学等各个领域,有助于提高人们的文化素养和审美能力。中秋猜谜语的形式也十分多样,有文字谜、图形谜、声音谜等,有些还需要运用谐音、双关、倒叙等技巧来解答。中秋猜谜语的寓意是祈求团圆、和睦、幸福和平安。

java 复制代码
import java.util.Scanner;
import java.util.Random;


//主类
public class GuessLanternRiddles {
    public static void main(String[] args) {
        //创建一个谜语数组
        Riddle[] riddles = new Riddle[5];
        riddles[0] = new Riddle("中秋节必吃,圆圆的,甜甜的,寓意团圆,猜猜是什么?", "月饼", "它是一种饼");
        riddles[1] = new Riddle("圆圆的,亮亮的,中秋节必备品,是什么?", "月亮", "它是一个球");
        riddles[2] = new Riddle("圆圆的,红红的,中秋节必玩的,是什么?", "灯笼", "它能发光");
        riddles[3] = new Riddle("中秋节必玩,圆圆的,红红的,寓意团圆,猜猜是什么?", "灯笼", "它是一种灯");
        riddles[4] = new Riddle("中秋节必吃,圆圆的,甜甜的,寓意团圆,猜猜是什么?", "月饼", "它能吃");
  

        //创建一个随机数对象
        Random random = new Random();
        //生成一个随机数,范围是0到4
        int index = random.nextInt(5);
        //从数组中随机选择一个谜语对象
        Riddle r = riddles[index];

        //创建一个键盘输入对象
        Scanner sc = new Scanner(System.in);

        //循环猜测
        while (true) {
            //输出谜面,并提示用户输入答案或者选择提示
            System.out.println(r.getPuzzle());
            System.out.println("请输入您的答案,或者输入"提示"来获取提示:");

            //获取用户的输入
            String input = sc.nextLine();

            //判断输入是否合法,如果不合法则提示重新输入
            if (input == null || input.isEmpty()) {
                System.out.println("您的输入为空,请重新输入!");
                continue;
            }

            //如果用户输入的是答案,则判断答案是否正确,如果正确则输出恭喜信息并结束程序,如果错误则输出错误信息并继续循环
            if (!input.equals("提示")) {
                if (input.equalsIgnoreCase(r.getAnswer())) {
                    System.out.println("恭喜您,答对了!");
                    break;
                } else {
                    System.out.println("很遗憾,答错了!");
                    continue;
                }
            }

            //如果用户输入的是提示,则输出提示信息,并继续循环
            if (input.equals("提示")) {
                System.out.println("提示:" + r.getHint());
                continue;
            }
        }

        //关闭键盘输入对象
        sc.close();
    }
}

//定义谜语类
class Riddle {
    private String puzzle; //谜面
    private String answer; //谜底
    private String hint; //提示

    //构造方法
    public Riddle(String puzzle, String answer, String hint) {
        this.puzzle = puzzle;
        this.answer = answer;
        this.hint = hint;
    }

    //获取谜面
    public String getPuzzle() {
        return puzzle;
    }

    //获取谜底
    public String getAnswer() {
        return answer;
    }

    //获取提示
    public String getHint() {
        return hint;
    }
}
  • 圆圆的,亮亮的,中秋节必备品,是什么?(答案:月亮)
  • 白白的,甜甜的,中秋节必吃的,是什么?(答案:月饼)
  • 圆圆的,红红的,中秋节必玩的,是什么?(答案:灯笼)
  • 中秋节必备,团圆的象征,十五的月亮圆圆亮,猜猜是什么?(答案:月亮)
  • 中秋节必吃,圆圆的,甜甜的,寓意团圆,猜猜是什么?(答案:月饼)
  • 中秋节必玩,圆圆的,红红的,寓意团圆,猜猜是什么?(答案:灯笼)
相关推荐
SunnyDays10112 分钟前
Java 如何为 PDF 添加、修改和删除书签
java·pdf
铃木之影34 分钟前
Java 版本 RAG 示例(Spring AI + Milvus)
java·人工智能·spring
C++、Java和Python的菜鸟40 分钟前
第14章 项目部署(Linux)
java
智海深蓝1 小时前
智慧渔业海上养殖数字孪生实践方向与难点拆解分析
java·前端·网络
2601_955760071 小时前
Claude API 多人协作中的版本管理方法
java·ai编程
梦想的旅途21 小时前
企业微信API二次开发:外部群模块功能清单与全场景对接
java·python·企业微信
校招VIP2 小时前
[校大]27届东华理工大学JAVA简历:中厂简历通过率30%
java·秋招·校招·实习·产品岗·27届
老白干2 小时前
基于 Spring AOP 的操作日志记录:以 DeptController 增删接口为例
java·python·spring
晚安code3 小时前
Java编程规范避坑指南:阿里开发手册15条强制规约实战解析
java·后端
小蒜学长3 小时前
“守望自然”招募志愿者环保行动网站的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端