国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java實現猜數字小游戲(Swing版)

瀏覽:88日期:2022-09-01 15:38:24

2008年的時候,在學習Java how to program第五版的時候,寫過一個猜數字小游戲,是用Applet寫的;現在,我要用Swing重寫這個小游戲,同時,加入一些新功能,如:背景顏色(紅色表示偏高,藍色表示偏低)、彈框、字體控制、布局管理器的使用。

運行截屏:

java實現猜數字小游戲(Swing版)

java實現猜數字小游戲(Swing版)

代碼如下:

//Guess a number between 1 and 1000//Java how to program, 10/e, Exercise 12.14//by pandenghuang@163.com/* (Guess-the-Number Game) Write an application that plays “guess the number” as follows:Your application chooses the number to be guessed by selecting an integer at random in the range1?1000. The application then displays the following in a label:I have a number between 1 and 1000. Can you guess my number?Please enter your first guess.A JTextField should be used to input the guess. As each guess is input, the background colorshould change to either red or blue. Red indicates that the user is getting “warmer,” and blue,“colder.” A JLabel should display either 'Too High' or 'Too Low' to help the user zero in. Whenthe user gets the correct answer, 'Correct!' should be displayed, and the JTextField used forinput should be changed to be uneditable. A JButton should be provided to allow the user to playthe game again. When the JButton is clicked, a new random number should be generated and theinput JTextField changed to be editable.*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.awt.BorderLayout;import static java.awt.BorderLayout.*; public class NumberGuessGame2016 extends JFrame {int number,random,counter=0;JLabel welcomeJLabel;JLabel hintJLabel;JTextField guessField;JPanel panel;//顯示不同背景色 public NumberGuessGame2016() { super('猜數字小游戲游戲'); setLayout(new BorderLayout()); panel=new JPanel(); panel.setBackground(Color.WHITE); welcomeJLabel= new JLabel('游戲規則:已隨機生成一個1到1000的整數,您能在10次以內猜出來嗎?'); welcomeJLabel.setFont(new Font('Simsun',1,10)); add(welcomeJLabel,NORTH); guessField=new JTextField(20); guessField.setFont(new Font('Arial',1,10)); panel.add(guessField); add(panel); //默認添加到中間 hintJLabel= new JLabel(''); add(hintJLabel,SOUTH); hintJLabel.setFont(new Font('Simsun',1,10)); TextFieldHandler handler=new TextFieldHandler(); guessField.addActionListener(handler); random=(int)(1+1000*Math.random()); } private class TextFieldHandler implements ActionListener { // process textfield events @Override public void actionPerformed (ActionEvent event) { while(true){ number=Integer.parseInt(guessField.getText()); while(number!=random) { number=Integer.parseInt(guessField.getText()); if(number>random) { hintJLabel.setText('猜高了,不要放棄哦?(^ω^)?。已試錯'+(++counter)+'次'); guessField.setText(''); panel.setBackground(Color.RED); } else { hintJLabel.setText('猜低了,請繼續!已試錯'+(++counter)+'次'); panel.setBackground(Color.BLUE); guessField.setText(''); } } //猜中后的用戶提示 if (counter<10) JOptionPane.showMessageDialog(null, '恭喜你,猜中了,難道你知道答案?O(∩_∩)O~'); else if (counter==10) JOptionPane.showMessageDialog(null, '辛苦了,終于猜中了!'); else JOptionPane.showMessageDialog(null, '您終于猜中了?(???)?,您其實可以做得更好的!'); //開始下一輪猜數字游戲前的初始化工作 guessField.setText(''); random=(int)(1+1000*Math.random()); counter=0; } }} public static void main(String[] args){ NumberGuessGame2016 f = new NumberGuessGame2016(); // create ListFrame f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setSize(400,300); f.setVisible(true); }}

更多有趣的經典小游戲實現專題,也分享給大家:

C++經典小游戲匯總

python經典小游戲匯總

python俄羅斯方塊游戲集合

JavaScript經典游戲 玩不停

java經典小游戲匯總

javascript經典小游戲匯總

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 娇小性色xxxxx中文 | 亚洲精品国产第一区二区三区 | 国产在线观看精品一区二区三区91 | 三级中文字幕 | 亚洲成人一区在线 | 牛牛本精品99久久精品88m | 亚洲综合99| 久久国产影视 | 成人国产精品一级毛片天堂 | 亚洲精品国产美女在线观看 | 亚洲国产一区二区a毛片 | 嫩草影院在线观看网站成人 | 欧美国产精品 | 精品国产一区二区二三区在线观看 | 欧美另类 videos黑人极品 | 免费永久观看美女视频网站网址 | 一级欧美毛片成人 | 大尺度福利视频奶水在线 | 91大神大战丝袜美女在线观看 | 国产精品日韩欧美在线第3页 | 国产综合13p | 久久一区二区精品综合 | 国产天堂亚洲精品 | v片免费看| 深夜福利视频大全在线观看 | free性丰满白嫩白嫩的hd | 成人毛片视频免费网站观看 | 一本久久a久久精品亚洲 | 成人夜色香网站在线观看 | 成人黄色在线免费观看 | 成人www视频网站免费观看 | 成人 在线欧美亚洲 | 亚洲乱人伦精品图片 | 欧美高清一级啪啪毛片 | 美女mm131爽爽爽免费视色 | 亚洲欧洲日产国产 最新 | 99成人在线视频 | 亚洲国产欧美另类 | 九九精品免费观看在线 | 美女黄色在线观看 | 亚洲欧洲小视频 |