【超详解】Java——猜数字游戏

在之前,写了一篇C语言来实现的猜数字的游戏【超详解】C语言——猜数字游戏_c语言猜数字游戏-CSDN博客,接下来我将紧承上文用Java的方式来实现猜数字游戏

目录

一、游戏整体思路

1.对游戏的认识

2.Java当中的随机数的生成

2.判断输入值与系统当中的值进行比较

二、整体代码的实现

三、对猜数字游戏进行改进

总结:


一、游戏整体思路

1.对游戏的认识

该游戏是通过对比自己所输入的数,与系统自动生成的数是否一致,一致则游戏成功,不一致,则需要继续猜,直至猜对,或者中间进行调整,有猜的次数的限制,最终实现游戏的结束。

2.Java当中的随机数的生成

Java当中的随机数依托的是一个调用的是一个包:

import java.util.Random

进行随机数的生成

随机数生成的代码为:

public static void main(String[] args) {
        Random random = new Random();
        int randNum=random.nextInt(100);
        System.out.println(randNum);
    }

该段代码是在主函数当中进行实现的,其中int randNum=random.nextInt(100);当中的100指的是生成的随机数的范围在0-100之间,在此时我们便将它的范围进行了缩小。

2.判断输入值与系统当中的值进行比较

 System.out.println(randNum);
        Scanner Num=new Scanner(System.in);
        int num = Num.nextInt();
        if(num>randNum){
            System.out.println("猜大了");
        }else if(num<randNum){
            System.out.println("猜小了");
        }else
            System.out.println("恭喜你,猜对了!");

首先需要注意的是输入值的时候最开始也是需要添加一个包的,然后进行使用。用if……else的语句进行实现就可以。


二、整体代码的实现

但是在整个的过程当中,我们需要有一个菜单进行游戏的选择

public static void mune(){
        System.out.println("******************************");
        System.out.println("************1.开始*************");
        System.out.println("************2.退出*************");
        System.out.println("******************************");
    }

且在整体的过程中,当他没有猜对的时候,需要进行循环的方式进行猜测。

所有的代码实现的结果:

import java.util.Random;
import java.util.Scanner;

public class caishuzi {
    public static void mune(){
        System.out.println("******************************");
        System.out.println("************1.开始*************");
        System.out.println("************2.退出*************");
        System.out.println("******************************");
    }
    public static void playGame(int randNum){
        while(true){
        System.out.println("请输入您所猜的数字:");
        Scanner scanner= new Scanner(System.in);
        int num = scanner.nextInt();
        if(num>randNum){
            System.out.println("猜大了");
        }else if(num<randNum){
            System.out.println("猜小了");
        }else {
            System.out.println("恭喜你,猜对了!");
            break;
        }
        }
    }
    public static void main(String[] args) {
        Random random = new Random();
        int randNum=random.nextInt(100);
        System.out.println(randNum);
        int play;
        do {
            mune();
            System.out.print("请输入您的选择:");
            Scanner scanner = new Scanner(System.in);
            play = scanner.nextInt();
            switch (play){
                case 1:
                    playGame(randNum);
                    break;
                case 2:
                    break;
            }
        }while(play!=2);
    }
}

三、对猜数字游戏进行改进

我们可以在前面加上可猜测的次数,进行限制:

import java.util.Random;
import java.util.Scanner;

public class caishuzi {
    public static void mune(){
        System.out.println("******************************");
        System.out.println("************1.开始*************");
        System.out.println("************2.退出*************");
        System.out.println("******************************");
    }
    public static void playGame(int randNum){
        int count = 5;
        while(count!=0){
        System.out.println("请输入您所猜的数字:");
        Scanner scanner= new Scanner(System.in);
        int num = scanner.nextInt();
        if(num>randNum){
            System.out.println("猜大了");
            count--;
            System.out.printf("您还有%d次机会",count);
        }else if(num<randNum){
            System.out.println("猜小了");
            count--;
            System.out.printf("您还有%d次机会",count);
        }else {
            System.out.println("恭喜你,猜对了!");
            break;
        }
        }
        if(count==0){
            System.out.println();
            System.out.println("很遗憾未能在指定的次数当中猜到结果!");
        }

    }
    public static void main(String[] args) {
        Random random = new Random();
        int randNum=random.nextInt(100);
       // System.out.println(randNum);
        int play;
        do {
            mune();
            System.out.print("请输入您的选择:");
            Scanner scanner = new Scanner(System.in);
            play = scanner.nextInt();
            switch (play){
                case 1:
                    playGame(randNum);
                    break;
                case 2:
                    break;
            }
        }while(play!=2);
    }
}

这个是修正之后的代码的部分加上了次数的限制,在后面也可以为这个游戏做一个不错的一个游戏的界面,观赏性会更强。


总结:

在本篇文章当中用Java的方式实现了猜数字游戏的实现,总体来说是比C语言的部分理解起来少了一些困难,但是还是需要好好理解代码的一些原理,以及他的一个先后次序的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

feathered-feathered

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值