使用Java實現(xiàn)一個石頭剪刀布游戲?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
專注于為中小企業(yè)提供成都做網(wǎng)站、網(wǎng)站設(shè)計服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)秦淮免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了超過千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。題目:
用 JAVA 語言設(shè)計如下界面的石頭剪刀布游戲。游戲的一方點擊界面上石頭、剪刀、布按鈕,游戲的另一方計算機隨機選擇,然后給出游戲結(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 對象 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); // 使窗體可見 } // 設(shè)置窗體 public TestOne() { setTitle("石頭剪刀布游戲"); // 石頭剪刀布游戲 setLocation(250, 250); // 設(shè)置窗體坐上頂點坐標 setSize(300, 300); // 設(shè)置窗體大小。窗體大小 : 350X350 // 建立對象 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("選擇剪刀, 石頭, 布開始游戲"); // 給所有 JBUtton 對象添加事件約束 // 給事件添加監(jiān)聽器 shitou.addActionListener(this); jiandao.addActionListener(this); bu.addActionListener(this); clear.addActionListener(this); // 把所有的新添加的對象都放進去窗體里面,先放進組件類,再放進窗體類 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("選擇剪刀, 石頭, 布開始游戲!"); } } }