holyya.com
2025-09-04 15:29:21 Thursday
登录
文章检索 我的文章 写文章
Java界面版猜数字游戏教程——从零开始打造简单猜数字游戏
2023-06-15 12:35:19 深夜i     --     --
Java 猜数字游戏 GUI编程

文章:

猜数字游戏是一种非常受欢迎的小游戏,我们可以用Java来打造一个简单的界面版猜数字游戏,来学习Java语言的基础知识和GUI编程的相关内容。

首先,我们需要准备好Java的开发环境,可以使用Eclipse、IntelliJ IDEA等开发工具。然后,我们可以先确定游戏的基本逻辑:

1.生成一个1-100之间的随机数作为答案;

2.用户输入猜测的数字;

3.判断猜测的数字和答案的大小关系,并给出相应的提示(猜测的数字大于或小于答案);

4.用户可以继续输入猜测的数字,直到猜测正确或达到最大猜测次数;

5.游戏结束后,输出猜测次数和答案,询问用户是否继续游戏。

有了游戏的基本逻辑,我们就可以开始编写Java代码了。以下是代码示例:


import javax.swing.*;

import java.awt.event.*;

public class GuessNumberGame extends JFrame implements ActionListener{

  //游戏面板

  JPanel mainPanel;

  //猜测次数

  int guessCount = 0;

  //最大猜测次数

  final int maxGuessCount = 10;

  //随机数答案

  int answer = (int)(Math.random() * 100) + 1;

  //输入框

  JTextField inputField;

  //输出框

  JTextArea outputArea;

  //构造函数

  public GuessNumberGame(){

    //初始化游戏面板

    mainPanel = new JPanel();

    //初始化输入框

    inputField = new JTextField(10);

    //初始化输出框

    outputArea = new JTextArea(8,30);

    //输出提示信息

    outputArea.append("猜数字游戏:猜一下1-100中的数字,你有"

          + maxGuessCount + "次机会!\n");

    //将输入框和按钮添加到游戏面板上

    mainPanel.add(inputField);

    //添加按钮

    JButton submitButton = new JButton("猜");

    submitButton.addActionListener(this);

    mainPanel.add(submitButton);

    //将输出框添加到游戏面板上

    mainPanel.add(outputArea);

    //将游戏面板添加到窗口上

    add(mainPanel);

    //设置窗口大小和标题

    setSize(400, 250);

    setTitle("猜数字游戏");

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    setVisible(true);

  }

  //猜测方法

  public void guessNumber(int guess){

    guessCount++;

    if(guess == answer){

      JOptionPane.showMessageDialog(this, "恭喜你猜对了!\n共猜测了"

          + guessCount + "次,答案就是" + answer + "。");

      int option = JOptionPane.showConfirmDialog(this, "要再玩一次吗?", "再来一局?", JOptionPane.YES_NO_OPTION);

      if(option == JOptionPane.YES_OPTION){

        //重新开始游戏

        guessCount = 0;

        answer = (int)(Math.random() * 100) + 1;

        outputArea.setText("猜数字游戏:猜一下1-100中的数字,你有"

          + maxGuessCount + "次机会!\n");

      }else{

        //退出游戏

        System.exit(0);

      }

    }else if(guessCount == maxGuessCount){

      JOptionPane.showMessageDialog(this, "很遗憾你没有猜中!\n共猜测了"

          + guessCount + "次,答案就是" + answer + "。");

      int option = JOptionPane.showConfirmDialog(this, "要再玩一次吗?", "再来一局?", JOptionPane.YES_NO_OPTION);

      if(option == JOptionPane.YES_OPTION){

        //重新开始游戏

        guessCount = 0;

        answer = (int)(Math.random() * 100) + 1;

        outputArea.setText("猜数字游戏:猜一下1-100中的数字,你有"

          + maxGuessCount + "次机会!\n");

      }else{

        //退出游戏

        System.exit(0);

      }

    }else if(guess > answer){

      outputArea.append(guess + "——猜大了!还剩下"

          + (maxGuessCount - guessCount) + "次机会。\n");

    }else{

      outputArea.append(guess + "——猜小了!还剩下"

          + (maxGuessCount - guessCount) + "次机会。\n");

    }

    //清空输入框

    inputField.setText("");

  }

  //按钮点击事件

  public void actionPerformed(ActionEvent e){

    String inputStr = inputField.getText();

    if(!inputStr.equals("")){

      int guess = Integer.parseInt(inputStr);

      guessNumber(guess);

    }

  }

  public static void main(String[] args) {

    new GuessNumberGame();

  }

}

以上是Java界面版猜数字游戏的代码,我们可以通过阅读代码来加深对Java语言和GUI编程的理解。如果你需要进一步改进游戏,你可以尝试添加计时器、语音提示等功能,让游戏更加有趣。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复