Java實(shí)現(xiàn)石頭剪刀布游戲
本文實(shí)例為大家分享了Java實(shí)現(xiàn)石頭剪刀布游戲的具體代碼,供大家參考,具體內(nèi)容如下
題目:
用 JAVA 語(yǔ)言設(shè)計(jì)如下界面的石頭剪刀布游戲。游戲的一方點(diǎn)擊界面上石頭、剪刀、布按鈕,游戲的另一方計(jì)算機(jī)隨機(jī)選擇,然后給出游戲結(jié)果。
Java:
import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; @SuppressWarnings("serial") public class TestOne extends JFrame implements ActionListener{ // 定義石頭剪刀布的 JButton 對(duì)象 JButton jiandao, shitou, bu, clear; JPanel panel2, panel1; JLabel label; // 主函數(shù) public static void main(String[] args) { TestOne frame = new TestOne(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 設(shè)置窗體關(guān)閉按鈕 frame.setVisible(true); // 使窗體可見(jiàn) } // 設(shè)置窗體 public TestOne() { setTitle("石頭剪刀布游戲"); // 石頭剪刀布游戲 setLocation(250, 250); // 設(shè)置窗體坐上頂點(diǎn)坐標(biāo) setSize(300, 300); // 設(shè)置窗體大小。窗體大小 : 350X350 // 建立對(duì)象 panel1 = new JPanel(); panel1.setBackground(Color.yellow); shitou = new JButton("石頭"); jiandao = new JButton("剪刀"); bu = new JButton("布"); clear = new JButton("清空"); panel2 = new JPanel(); panel2.setBackground(Color.green); label = new JLabel("選擇剪刀, 石頭, 布開(kāi)始游戲"); // 給所有 JBUtton 對(duì)象添加事件約束 // 給事件添加監(jiān)聽(tīng)器 shitou.addActionListener(this); jiandao.addActionListener(this); bu.addActionListener(this); clear.addActionListener(this); // 把所有的新添加的對(duì)象都放進(jìn)去窗體里面,先放進(jìn)組件類(lèi),再放進(jìn)窗體類(lèi) panel1.add(shitou); panel1.add(jiandao); panel1.add(bu); panel1.add(clear); panel2.add(label); add(panel1, BorderLayout.NORTH); add(panel2, BorderLayout.CENTER); } // 事件響應(yīng)器 public void actionPerformed(ActionEvent e) { if(e.getSource() == shitou) { int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出石頭,電腦出石頭,平局!"); break; case 1: label.setText("你出石頭,電腦出剪刀,恭喜你贏了!"); break; case 2: label.setText("你出石頭,電腦出布,很遺憾你輸了!"); break; } }else if(e.getSource() == jiandao){ int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出剪刀,電腦出石頭,很遺憾你輸了!"); break; case 1: label.setText("你出剪刀,電腦出剪刀,平局!"); break; case 2: label.setText("你出剪刀,電腦出布,恭喜你贏了!"); break; } }else if(e.getSource() == bu){ int i = ((int)(Math.random()*10))%3; switch(i) { case 0: label.setText("你出布,電腦出石頭,恭喜你贏了!"); break; case 1: label.setText("你出布,電腦出剪刀,很遺憾你輸了!"); break; case 2: label.setText("你出布,電腦出布,平局!"); break; } }else if(e.getSource() == clear) { label.setText("選擇剪刀, 石頭, 布開(kāi)始游戲!"); } } }
運(yùn)行結(jié)果:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Javaweb 鼠標(biāo)移入移出表格顏色變化的實(shí)現(xiàn)
這篇文章主要介紹了Javaweb 鼠標(biāo)移入移出表格顏色變化的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09JavaWeb中struts2實(shí)現(xiàn)文件上傳下載功能實(shí)例解析
這篇文章主要介紹了JavaWeb中struts2文件上傳下載功能的實(shí)現(xiàn),在Web應(yīng)用系統(tǒng)開(kāi)發(fā)中,文件上傳和下載功能是非常常用的功能,需要的朋友可以參考下2016-05-05SpringBoot訪問(wèn)請(qǐng)求404解決方法
這篇文章主要介紹了SpringBoot訪問(wèn)請(qǐng)求404解決方法,文中有詳細(xì)的解決方法供大家參考,對(duì)我們學(xué)習(xí)或工作有一定的幫助,需要的朋友跟著小編一起來(lái)學(xué)習(xí)吧2023-07-07Spring Security6配置方法(廢棄WebSecurityConfigurerAdapter)
本文主要介紹了Spring Security6配置方法(廢棄WebSecurityConfigurerAdapter),就像文章標(biāo)題所說(shuō)的,SpringSecurity已經(jīng)廢棄了繼承WebSecurityConfigurerAdapter的配置方式,下面就來(lái)詳細(xì)的介紹一下,感興趣的可以了解一下2023-12-12教你用Java Swing做一個(gè)定時(shí)提醒工具
今天給大家?guī)?lái)的是Java的相關(guān)知識(shí),文章圍繞著如何用Java做一個(gè)定時(shí)提醒工具展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06java yaml轉(zhuǎn)properties工具類(lèi)方式
這篇文章主要介紹了java yaml轉(zhuǎn)properties工具類(lèi)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10