控制檯猜數字遊戲Java版

爲了練習代碼規範,代碼邏輯寫的一個控制檯小遊戲。能夠無限玩,隨時能夠選擇退出。java

import java.util.Scanner;

public class MonkeyGuess {

    private static Scanner scanner = new Scanner(System.in);
    private static Random random = new java.util.Random();

    public static void main(String[] args) {
        System.out.println("--------歡迎來到猜數字小遊戲---------");
        System.out.println("遊戲規則:");
        System.out.println("1.爲了下降難度,本次猜數字僅有3個數字:0、一、2,猜對便可得到勝利;");
        System.out.println("2.遊戲過程當中隨時能夠輸入n退出;");
        System.out.println("--------遊戲開始----------");
        // 定義結果
        int result=random.nextInt(3);
        game(result);
    }

    /**
     * 這個傻乎乎的註釋我不想寫,可是不寫怕被罵,因此仍是意思一下
     * @param result
     */
    public static void game(int result){
        System.out.print("請輸入:");
        String input = scanner.next();
        if ("n".equals(input)){
            System.out.println("歡迎下次光臨!!");
        }else{
            int num = 0;
            try {
                num = Integer.parseInt(input);
            }catch (NumberFormatException e){
                System.out.println("亂輸可不行!遊戲繼續!");
                game(result);
                return;
            }catch (Exception e){
                System.out.println("亂輸可不行!遊戲繼續!");
                game(result);
                return;
            }
            if (num == result){
                System.out.println("猜對了!");
                System.out.print("還要繼續嗎?(輸入y繼續遊戲):");
                String res = scanner.next();
                if (!"y".equals(res)){
                    System.out.println("歡迎下次光臨!!");
                    return;
                }
                // 從新生成一個數字
                random = new java.util.Random();
                result = random.nextInt(3);
            }else{
                System.out.println("猜錯了哦!");
            }
            game(result);
        }
    }
}
相關文章
相關標籤/搜索