版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、文檔供參考,可復(fù)制、編制,期待您的好評(píng)與關(guān)注! Java小游戲第一個(gè)Java文件:import java.util.Scanner;public class GameA_B public static void main(String args) Scanner reader=new Scanner(System.in); int area; System.out.println("Game StartPlease enter the area:(1-9)" + 'n'+"1,2,3 means easy"+'n'+&qu
2、ot;4,5,6 means middle"+'n'+ "7,8,9 means hard"+'n'+"Please choose:"); area=reader.nextInt(); switch(area-1)/3) case 0:System.out.println("You choose easy! ");break; case 1:System.out.println("You choose middle! ");break; case 2:System.out.
3、println("You choose hard! ");break; System.out.println("Good Luck!"); GameProcess game1=new GameProcess(area); cess();第二個(gè)Java文件:import java.util.Random;import java.util.Scanner;public class GameProcess int area,i,arrcount,right,midright,t;int base=new intarrcount,userNum
4、=new intarea,sysNum=new intarea;Random random=new Random(); Scanner reader=new Scanner(System.in);GameProcess(int a)area=a;arrcount=10;right=0;midright=0;t=0;base=new intarrcount;userNum=new intarea;sysNum=new intarea;for(int i=0;i<arrcount;i+) basei=i;/System.out.println(basei); void process() r
5、and(); while(right!=area) scanf(); compare(); print(); check(); void rand() for(i=0;i<area;i+) t=random.nextInt(arrcount); /System.out.println(t); sysNumi=baset; System.out.println(baset); delarr(t); void delarr(int t) for(int j=t;j<arrcount-1;j+) basej=basej+1; arrcount-; void scanf() System.
6、out.println("The system number has created!"+"n"+"Please enter "+area+" Numbers"); for(int i=0;i<area;i+) userNumi=reader.nextShort(); void check() if(right=area) System.out.println("You win!"); boolean check(int i) return true; void compare() int
7、 i=0,j=0; right=midright=0; for(i=0;i<area;i+) for(j=0;j<area;j+) if(userNumi=sysNumj) if(i=j) right+; else midright+; void print() System.out.println(" A "+right+" B "+midright); import java.awt.*;import java.awt.event.*;import javax.swing.*;class TestGame public static vo
8、id main(String args) App ap = new App(); /調(diào)用App()開始運(yùn)行程序 ap.show(); class App extends JFrame MainPanel mp; public App() mp = new MainPanel(); this.getContentPane().add(mp); this.setSize(400, 450); this.setTitle("小游戲"); /* * 主面板 * 顯示格子 * author Administrator * */class MainPanel extends JPane
9、l ButtonPanel bp = new ButtonPanel(); CtrlPanel rp = new CtrlPanel(); public MainPanel() this.setLayout(new BorderLayout(); rp.btnstart.addActionListener(new StartListener(); this.add(bp, "Center"); this.add(rp, "South"); class StartListener implements ActionListener /* * 重新開始按鈕的
10、事件 * 調(diào)用按鈕面板里面的顏色初始化方法 */ public void actionPerformed(ActionEvent e) if (e.getActionCommand() = "重新開始") bp.ColorInit(); class ButtonPanel extends JPanel JButton b = new JButton55; /* * 按鈕界面的構(gòu)造器 * 設(shè)置布局方式為Grid布局,并生成5*5的格子, * 在每個(gè)格子生成一個(gè)按鈕, * 為每個(gè)按鈕添加一個(gè)監(jiān)聽事件 */ public ButtonPanel() this.setLayout(
11、new GridLayout(5, 5); for (int i = 0; i < 5; i+) for (int j = 0; j < 5; j+) bij = new JButton(); bij.setActionCommand("" + (i + 1) + (j + 1); bij.addActionListener(new MyButtonListener(); this.add(bij); this.ColorInit(); /* * 面板初始化時(shí)候給所有的格子都繪上深灰色 * i.j分別是行和列 */ public void ColorInit()
12、 for (int i = 0; i < 5; i+) for (int j = 0; j < 5; j+) bij.setBackground(Color.DARK_GRAY); /* * 按鈕上監(jiān)聽的時(shí)事件,監(jiān)聽點(diǎn)擊 * author Administrator * */ class MyButtonListener implements ActionListener int r, c; /* * 需要改變顏色的行和列 * r row * c colunm * 調(diào)用change()來改變顏色 */ public void actionPerformed(ActionEvent
13、e) int i = Integer.parseInt(e.getActionCommand(); r = i / 10 - 1; c = i % 10 - 1; this.changer(); /* * 傳一個(gè)按鈕控件進(jìn)去 * 判斷顏色,如果是深灰則變?yōu)榉奂t * 否則義相反 * param b */ public void btnChange(JButton b) if (b.getBackground() = Color.DARK_GRAY) b.setBackground(Color.pink); else b.setBackground(Color.DARK_GRAY); /* * 這
14、個(gè)方法是根據(jù)點(diǎn)擊的按鈕判斷周圍需要 * 不能超越數(shù)組的下標(biāo) */ public void changer() this.btnChange(brc); if (r > 0) /行號(hào)大于0 this.btnChange(br - 1c); if (r < 4) this.btnChange(br + 1c); if (c > 0)/列號(hào)大于0 this.btnChange(brc - 1); if (c < 4)/列好小余0 this.btnChange(brc + 1); /* * 控制面板 * author Administrator *下面的開始按鈕 */class
15、 CtrlPanel extends JPanel JButton btnstart; public CtrlPanel() btnstart = new JButton("重新開始"); this.add(btnstart); import java.util.*;public class Cai enum ResSHITOU, JIANZI, BU; Res res; public static void main(String args) throws Exception / TODO Auto-generated method stub Cai cai = new
16、Cai(); System.out.println("請(qǐng)輸入你的選擇:"); System.out.println("0表示石頭,1表示剪子,2表示布"); char yourResultOfChar =(char) System.in.read(); int yourResultOfInt = yourResultOfChar - '0' int computerResult = pb();cai.getYourResult(yourResultOfInt); switch (computerResult) case 0: System
17、.out.println("電腦選擇石頭"); break; case 1: System.out.println("電腦選擇剪子"); break; case 2: System.out.println("電腦選擇布"); break; cai.pa(computerResult); public void getYourResult(int count) Res result = Res.values(); res = resultcount; void pa(int computer) Res result = Res.valu
18、es(); if(this.res = Res.SHITOU) System.out.println("我選擇石頭"); switch(resultcomputer) case SHITOU: System.out.println("平局,再來!"); break; case JIANZI: System.out.println("我贏了!"); break; case BU: System.out.println("我輸了!"); break; else if(this.res = Res.JIANZI) Sys
19、tem.out.println("我選擇剪子"); switch(resultcomputer) case JIANZI: System.out.println("平局,再來!"); break; case BU: System.out.println("我贏了!"); break; case SHITOU: System.out.println("我輸了!"); break; else if(this.res = Res.BU) System.out.println("我選擇布"); swit
20、ch(resultcomputer) case BU: System.out.println("平局,再來!"); break; case SHITOU: System.out.println("我贏了!"); break; case JIANZI: System.out.println("我輸了!"); break; static int pb() Random ran = new Random(); int res = ran.nextInt(3); return res; /輸出0-2的整數(shù),0表示石頭,1表示剪子,2表示布,和
21、enum Res中的順序相對(duì)應(yīng) import java.util.*; /導(dǎo)入實(shí)用包util下所有的類import javax.swing.*;import java.awt.*;import java.awt.event.*;public class CaiShu public static void main(String args) Win f = new Win(); f.setVisible(true); class Win extends JFrame implements ActionListener JLabel labe; JButton butt; JButton butt
22、on; Random a = new Random(); private int i = 0; private int num; JTextField text1, text2; JPanel p; public Win() super("猜數(shù)游戲"); labe = new JLabel("我心里有個(gè)數(shù),它是1-100之間的,你能猜出來嗎?"); butt = new JButton("確認(rèn)"); button = new JButton("重開"); text1 = new JTextField(5); tex
23、t2 = new JTextField(20); p = new JPanel(); Container con = getContentPane(); / 調(diào)用JFrame的getContentPane得到容器 text2.setEditable(false); / 使輸出結(jié)果文本域不可編輯 butt.addActionListener(this); / 執(zhí)行結(jié)果動(dòng)作 con.setLayout(new GridLayout(4, 1); / 設(shè)置整個(gè)界面的長(zhǎng)寬比 p.add(text1); / 添加輸入數(shù)字文本域 p.add(butt); p.add(button); button.addActionListener(new ActionListener() public void actionPerformed(ActionEvent e) text1.setText(""); text2.setText(""); i=0; ); con.add(labe); / 添加游戲標(biāo)簽 con.add(p); con.add(text2); / 添加輸出結(jié)果信息文本域 setSize(300, 300); / 設(shè)置
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年貸款援助就業(yè)合同3篇
- 2024年零售店店長(zhǎng)專屬聘用協(xié)議
- 2024年跨國(guó)品牌許可使用合同
- 2024年藝術(shù)品交易協(xié)議樣式版B版
- 2024年設(shè)備采購(gòu)與工程設(shè)計(jì)合同
- 2024航空公司與旅行社之間關(guān)于機(jī)票銷售的合同
- 2025年度熱帶水果店專業(yè)承包合作協(xié)議3篇
- 2024年陶幻離婚后個(gè)人隱私保護(hù)及信息共享協(xié)議3篇
- 2025年度大連市二手房地產(chǎn)交易合同備案與登記服務(wù)合同3篇
- 2024高空作業(yè)安全協(xié)議書搭雨棚
- 2022-2024年浙江中考英語(yǔ)試題匯編:完形填空(學(xué)生版)
- 2025年廣東省廣州市荔灣區(qū)各街道辦事處招聘90人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 中試部培訓(xùn)資料
- 【可行性報(bào)告】2024年第三方檢測(cè)相關(guān)項(xiàng)目可行性研究報(bào)告
- 2024解析:第三章物態(tài)變化-基礎(chǔ)練(原卷版)
- 藏醫(yī)學(xué)專業(yè)生涯發(fā)展展示
- 信息安全保密三員培訓(xùn)
- 2024新版《藥品管理法》培訓(xùn)課件
- DB41T 2302-2022 人工影響天氣地面作業(yè)規(guī)程
- 【初中語(yǔ)文】2024-2025學(xué)年新統(tǒng)編版語(yǔ)文七年級(jí)上冊(cè)期中專題12:議論文閱讀
- 四川省成都市2022-2023學(xué)年高二上學(xué)期期末調(diào)研考試物理試題(原卷版)
評(píng)論
0/150
提交評(píng)論