设计一个GUI猜数字游戏程序_第1页
设计一个GUI猜数字游戏程序_第2页
设计一个GUI猜数字游戏程序_第3页
设计一个GUI猜数字游戏程序_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.设计一个GUI猜数字游戏程序该游戏可以由程序随机产生四个0到9之间的整数,且不重复。玩游戏者通过由用户输入四个数字来匹配上面所产生的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。 假设随机数据为3792 时,分析如下数据: 3792 输入: 1234 0A2B 输入: 5678 0A1B 输入: 0867 0A1B输入: 9786 1A1B 输入: 1794 2A0B 输入: 2793 2A2B 输入: 3792 4A0B1、设计一个GUI猜数字游戏程序:package cn.scelong.guessnum;/可以删除掉import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Random;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JTextField;public class GuessNumberGUI extends JFrame private JTextField inputTxt; private JTextField dispTxt; private JButton okButton; private JButton resetBtn; private int randomNum; /随机产生的随机数 private Random randGenerator; /随机数生成器 public GuessNumberGUI() super(Guess Number Game); this.randGenerator = new Random(9999); this.randomNum = generateRandomNum(); System.out.println(Construtor+this.randomNum); initComponent(); componentAddListener(); private int generateRandomNum() int guessNum = this.randGenerator.nextInt(9999); if(guessNum = 1000) return guessNum; return generateRandomNum(); private void initComponent() setLayout(new FlowLayout(); this.inputTxt = new JTextField(); this.dispTxt = new JTextField(); this.okButton = new JButton(确定); this.resetBtn = new JButton(重新开始); this.inputTxt.setColumns(6); this.dispTxt.setColumns(6); this.dispTxt.setText(显示结果); add(inputTxt); add(dispTxt); add(okButton); add(resetBtn); pack(); private void componentAddListener() this.okButton.addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) String input = inputTxt.getText(); generateNumber(input); ); this.resetBtn.addActionListener(new ActionListener() Override public void actionPerformed(ActionEvent e) randomNum = generateRandomNum(); System.out.println(ResetNumber=+randomNum); /test code output ); private void generateNumber(String input) if(.equals(input) | input = null) JOptionPane.showMessageDialog(this, 请输入数字); return ; String result = ; int aCnt = 0; int bCnt = 0; String randNumStr = String.valueOf(this.randomNum); for(int i=0; iinput.length(); i+) char ch = input.charAt(i); for(int j=0; jrandNumStr.length(); j+) char jch = randNumStr.charAt(j); if(jch = ch) bCnt+; if(i = j) aCnt+; bCnt-; result += aCnt+A+bCnt+B; System.out.println(result); dispTxt.setText(result); public void showMe() setLocation(200, 100); setVisible(true);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论