JAVA猜数字游戏(二分)
来源:互联网 发布:php 解压zip文件 编辑:程序博客网 时间:2024/05/22 05:18
<img src="http://img.blog.csdn.net/20150428213650871?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaG51c3RfdGFvc2hpcWlhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.Random;import javax.swing.*;public class Main extends JFrame{JButton sendBt;JTextField inputField;JTextArea chat;JScrollPane scollPanel;JScrollBar jsb;int times=0;//随机数生成Random r = new Random();final int result = r.nextInt(98)+1;public Main(){this.setLayout(new BorderLayout());//游戏提示框chatchat = new JTextArea(12,34);scollPanel = new JScrollPane(chat); scollPanel.setVerticalScrollBarPolicy(ScrollPaneConstants. VERTICAL_SCROLLBAR_ALWAYS);//只可以纵向拉动scollPanel.setHorizontalScrollBarPolicy(ScrollPaneConstants. HORIZONTAL_SCROLLBAR_NEVER);//不可以横向拉动JScrollBar sb = scollPanel.getVerticalScrollBar();sb.setValue(sb.getMaximum()); this.add(scollPanel, BorderLayout.CENTER); chat.setEditable(false);//不可编辑 chat.append("游戏开始!"+"\n"); chat.append("游戏规则:有一个数字x范围在1-99"+"\n"+"你需要猜这个数字x是多少"+"\n"+ "以提高游戏的娱乐性,每猜错一次,系统会提示你的数字比x大了还是小了"+"\n"+ "ps:按下按钮猜一次,为方便,也可以使用热键Enter猜一次"+"\n"+"看看你最少多少次能猜中"+"\n\n"); //输入框与按钮 JPanel inputPanel = new JPanel(); inputField= new JTextField(20); sendBt = new JButton("猜一下"); sendBt.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {cai();}}); //键盘上面的回车就可以发送 inputField.addKeyListener(new KeyAdapter() { public void keyPressed(KeyEvent e){ int keyCode = e.getKeyCode(); if(keyCode==10){ cai(); } }}); Label label = new Label("您猜的数字是:"); inputPanel.add(label); inputPanel.add(inputField); inputPanel.add(sendBt); this.add(scollPanel,BorderLayout.CENTER); this.add(inputPanel,BorderLayout.SOUTH); this.setTitle("游戏(猜数字)"); Toolkit tk = Toolkit.getDefaultToolkit(); Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); int width = 500, height = 500; this.setBounds((d.width - width) / 2, (d.height - height) / 2, width, height); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true);}public void cai(){times++;String content = inputField.getText();int num = Integer.valueOf(content).intValue();if(num<result){ chat.append("第"+times+"次猜测答案错误》提示:正确答案比您输入的 "+num+" 更大"+"\n"+"再猜一次看看吧"+"\n"); }else if(num>result){ chat.append("第"+times+"次猜测答案错误》提示:正确答案比您输入的 "+num+" 更小"+"\n"+"再猜一次看看吧"+"\n"); }else{ chat.append("恭喜你!!!答案正确!!!!!!"+"\n"); chat.append("正确的数字就是"+result+",您使用了"+times+"次猜数字机会"+"\n"); chat.append("为了让次数更少,其中有一个典型的算法就是二分法"+"\n" +"每次截取可能数字的中间值,一直二分下去。"+"\n"+"想要具体探索二分的威力吗?多试几次游戏看看吧"); } inputField.setText(""); chat.append("\n"); jsb=scollPanel.getVerticalScrollBar();// jsb.setValue(jsb.getMaximum());// chat.selectAll();//显示在最后一行}public static void main(String[] args) {new Main();}}
0 0
- JAVA猜数字游戏(二分)
- 猜数字游戏(java)
- Java猜数字游戏
- [Java]猜数字游戏
- java 猜数字游戏
- Java 猜数字游戏
- java--猜数字游戏
- java 猜数字游戏
- java.猜数字游戏
- java 猜数字游戏
- 猜数字游戏java
- java 猜数字游戏
- java猜数字游戏
- Java猜数字游戏
- 数字游戏(java)
- java 简单猜数字游戏
- Java编程----猜数字游戏
- java编写猜数字游戏
- Max Num(最大数)
- 100 hours anti boiled water film faced plywood
- linux 基础命令
- Android之MVC模式
- Eclipse中Android项目运行时出现Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log
- JAVA猜数字游戏(二分)
- 外观模式(三):抽象外观类,外观模式效果与适用场景
- 编译原理词法分析
- 解决layout graphic 无法显示的问题
- 个人作业
- HDU 1160 FatMouse's Speed
- 初识FishEye
- iOS代码获取所有控件View结构树存到XML查看
- 关于CUDA6.5中newdelete的解读